<SEC-DOCUMENT>0000851205-18-000016.txt : 20181029
<SEC-HEADER>0000851205-18-000016.hdr.sgml : 20181029
<ACCEPTANCE-DATETIME>20181029160732
ACCESSION NUMBER:		0000851205-18-000016
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		82
CONFORMED PERIOD OF REPORT:	20180930
FILED AS OF DATE:		20181029
DATE AS OF CHANGE:		20181029

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:		10-Q
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-34218
		FILM NUMBER:		181144294

	BUSINESS ADDRESS:	
		STREET 1:		ONE VISION DR
		CITY:			NATICK
		STATE:			MA
		ZIP:			01760
		BUSINESS PHONE:		5086503000

	MAIL ADDRESS:	
		STREET 1:		ONE VISION DRIVE
		CITY:			NATICK
		STATE:			MA
		ZIP:			01760
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>cgnx-9302018x10q.htm
<DESCRIPTION>10-Q
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<!-- Document created using Wdesk 1 -->
		<!-- Copyright 2018 Workiva -->
		<title>Document</title>
	</head>
	<body style="font-family:Times New Roman;font-size:10pt;">
<div><a name="s2AF1C4755B5B5EEDA26677CDDC163DCE"></a></div><div style="line-height:120%;padding-top:5px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:97.65625%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:20%;"></td><td style="width:20%;"></td><td style="width:20%;"></td><td style="width:20%;"></td><td style="width:20%;"></td></tr><tr><td colspan="5" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:5px;text-align:center;font-size:11pt;"><font style="font-family:Arial;font-size:11pt;font-weight:bold;">UNITED STATES</font></div><div style="line-height:120%;text-align:center;font-size:11pt;"><font style="font-family:Arial;font-size:11pt;font-weight:bold;">SECURITIES AND EXCHANGE COMMISSION</font></div><div style="line-height:120%;text-align:center;font-size:11pt;"><font style="font-family:Arial;font-size:11pt;font-weight:bold;">WASHINGTON, D.C. 20549</font><font style="font-family:Arial;font-size:11pt;">&#160;</font></div><div style="line-height:120%;text-align:center;font-size:22pt;"><font style="font-family:Arial;font-size:22pt;font-weight:bold;">FORM 10-Q</font><font style="font-family:Arial;font-size:22pt;">&#160;</font></div><div style="line-height:120%;padding-top:16px;font-size:9.5pt;"><font style="font-family:Arial;font-size:9.5pt;">(Mark One)</font></div><div style="line-height:120%;font-size:9pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"></td></tr><tr><td style="width:9%;"></td><td style="width:91%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="padding-top:2px;text-align:right;text-indent:32px;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">[ X ]</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Quarterly Report pursuant to Section&#160;13 or 15(d) of the Securities Exchange Act of 1934 for the quarterly period ended September 30, 2018 or</font></div></td></tr></table></div></div><div style="line-height:120%;text-align:left;font-size:9.5pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"></td></tr><tr><td style="width:9%;"></td><td style="width:91%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:9.5pt;"><font style="font-family:Arial;font-size:9.5pt;">[&#160;&#160;&#160;&#160;]</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Transition Report pursuant to Section&#160;13 or 15(d) of the Securities Exchange Act of 1934 for the transition period from __________ to __________</font></div></td></tr></table></div></div><div style="line-height:120%;text-align:left;font-size:9.5pt;"><font style="font-family:Arial;font-size:9.5pt;font-weight:bold;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</font></div><div style="line-height:120%;text-align:center;font-size:9.5pt;"><font style="font-family:Arial;font-size:9.5pt;font-weight:bold;">Commission File Number 001-34218</font></div><div style="line-height:120%;text-align:center;font-size:17pt;"><font style="font-family:Arial;font-size:17pt;font-weight:bold;">COGNEX CORPORATION</font></div><div style="line-height:120%;text-align:center;font-size:9pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:431px;border-collapse:collapse;text-align:left;"><tr><td colspan="1"></td></tr><tr><td style="width:430px;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">(Exact name of registrant as specified in its charter)</font></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:9pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:63.28125%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:49%;"></td><td style="width:2%;"></td><td style="width:49%;"></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Massachusetts</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">04-2713778</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">(State or other jurisdiction of</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">incorporation or organization)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">(I.R.S. Employer</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Identification No.)</font></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">One Vision Drive</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Natick, Massachusetts 01760-2059</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(508) 650-3000</font></div><div style="line-height:120%;text-align:center;font-size:8pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:617px;border-collapse:collapse;text-align:left;"><tr><td colspan="1"></td></tr><tr><td style="width:617px;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">(Address, including zip code, and telephone number, including area code, of principal executive offices)</font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Indicate by check mark whether the registrant (1)&#160;has filed all reports required to be filed by Section&#160;13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2)&#160;has been subject to such filing requirements for the past 90 days.&#160;&#160;</font></div><div style="line-height:120%;padding-top:8px;text-align:center;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:643px;border-collapse:collapse;text-align:left;"><tr><td colspan="13"></td></tr><tr><td style="width:130px;"></td><td style="width:16px;"></td><td style="width:42px;"></td><td style="width:46px;"></td><td style="width:44px;"></td><td style="width:16px;"></td><td style="width:76px;"></td><td style="width:16px;"></td><td style="width:30px;"></td><td style="width:46px;"></td><td style="width:45px;"></td><td style="width:14px;"></td><td style="width:116px;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">Yes</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">X</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">No</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:10px;text-indent:32px;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (&#167;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</font></div><div style="line-height:120%;padding-top:10px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:643px;border-collapse:collapse;text-align:left;"><tr><td colspan="13"></td></tr><tr><td style="width:130px;"></td><td style="width:16px;"></td><td style="width:42px;"></td><td style="width:46px;"></td><td style="width:44px;"></td><td style="width:16px;"></td><td style="width:76px;"></td><td style="width:16px;"></td><td style="width:30px;"></td><td style="width:46px;"></td><td style="width:45px;"></td><td style="width:14px;"></td><td style="width:116px;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">Yes</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">X</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">No</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:10px;text-indent:32px;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company,&#8221; and "emerging growth company" in Rule 12b-2 of the Exchange Act (Check one):</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:590px;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:164px;"></td><td style="width:44px;"></td><td style="width:18px;"></td><td style="width:18px;"></td><td style="width:18px;"></td><td style="width:10px;"></td><td style="width:269px;"></td><td style="width:45px;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">Large&#160;accelerated&#160;filer</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">X</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">Accelerated&#160;filer</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">Non-accelerated filer</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">Smaller&#160;reporting&#160;company</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">Emerging growth company</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:4px;padding-left:18px;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">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.</font><font style="font-family:Arial;font-size:9pt;font-weight:bold;">&#32;</font><font style="font-family:Arial;font-size:9pt;font-weight:bold;text-decoration:underline;">______</font></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).&#160;&#160;&#160;&#160; </font></div><div style="line-height:120%;text-align:center;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:643px;border-collapse:collapse;text-align:left;"><tr><td colspan="13"></td></tr><tr><td style="width:130px;"></td><td style="width:16px;"></td><td style="width:42px;"></td><td style="width:46px;"></td><td style="width:44px;"></td><td style="width:16px;"></td><td style="width:76px;"></td><td style="width:16px;"></td><td style="width:30px;"></td><td style="width:46px;"></td><td style="width:45px;"></td><td style="width:14px;"></td><td style="width:116px;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">Yes</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">No</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">X</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"><font style="font-family:Arial;font-size:9pt;">As of </font><font style="font-family:Arial;font-size:9pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:9pt;">, there were </font><font style="font-family:Arial;font-size:9pt;">172,191,187</font><font style="font-family:Arial;font-size:9pt;">&#32;shares of Common Stock, $.002 par value per share, of the registrant outstanding.</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:97.65625%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:20%;"></td><td style="width:20%;"></td><td style="width:20%;"></td><td style="width:20%;"></td><td style="width:20%;"></td></tr><tr><td colspan="5" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr></table></div></div><div><br></div><hr style="page-break-after:always"><div><a name="s06DFE6725733595C89B007096D03011A"></a></div><div><br></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">INDEX</font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;">&#160;</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:9%;"></td><td style="width:85%;"></td><td style="width:6%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">PART&#160;I</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">FINANCIAL INFORMATION</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sFFA20680D97B52E38A64AED957D3454D">3</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sFFA20680D97B52E38A64AED957D3454D"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Item&#160;1.</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Financial Statements (interim periods unaudited)</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sFFA20680D97B52E38A64AED957D3454D">3</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s1089691C7A33589C88BBCF8911D18132"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Consolidated Statements of Operations for the three-month and nine-month periods ended September 30, 2018 and October 1, 2017</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s1089691C7A33589C88BBCF8911D18132">3</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sD686D6056D4C5390AD33A99C1A8F7C07"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Consolidated Statements of Comprehensive Income for the three-month and nine-month periods ended September 30, 2018 and October 1, 2017</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sD686D6056D4C5390AD33A99C1A8F7C07">4</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sE5D758E07DEC50D88BFF31ADDFB90963"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Consolidated Balance Sheets as of September 30, 2018 and December 31, 2017</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sE5D758E07DEC50D88BFF31ADDFB90963">5</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sEB2FEFAB33D15B88918BCF407319DB8B"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Consolidated Statements of Cash Flows for the nine-month periods ended September 30, 2018 and October 1, 2017</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sEB2FEFAB33D15B88918BCF407319DB8B">6</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s5FB89B70A12058A6975BFDB8E772FE13"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Consolidated Statement of Shareholders&#8217; Equity for the nine-month period ended September 30, 2018</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s5FB89B70A12058A6975BFDB8E772FE13">7</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sCA5D6D6B97CE540AADE2CFDA84B7BCB6"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Notes to Consolidated Financial Statements</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sCA5D6D6B97CE540AADE2CFDA84B7BCB6">8</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s82E3A122ED7A5DB780E364305E4464DD"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Item&#160;2.</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s82E3A122ED7A5DB780E364305E4464DD"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Management's Discussion and Analysis of Financial Condition and Results of Operations</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s82E3A122ED7A5DB780E364305E4464DD">25</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s6AD203DE16605214BC24399CA22F2AFB"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Item&#160;3.</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s6AD203DE16605214BC24399CA22F2AFB"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Quantitative and Qualitative Disclosures About Market Risk</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s6AD203DE16605214BC24399CA22F2AFB">29</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s5AFA1363F1DF53F196063949DD56CCCB"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Item&#160;4.</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s5AFA1363F1DF53F196063949DD56CCCB"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Controls and Procedures</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s5AFA1363F1DF53F196063949DD56CCCB">30</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;font-weight:bold;color:#000000;text-decoration:none;" href="#sFDD67172E8A75B2BAADEC05631763A7B"><font style="font-family:Arial;font-size:10pt;font-weight:bold;color:#000000;text-decoration:none;">PART&#160;II</font></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;font-weight:bold;color:#000000;text-decoration:none;" href="#sFDD67172E8A75B2BAADEC05631763A7B"><font style="font-family:Arial;font-size:10pt;font-weight:bold;color:#000000;text-decoration:none;">OTHER INFORMATION</font></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s93A3627F36D955458EED3E4C69F92783"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Item&#160;1.</font></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s93A3627F36D955458EED3E4C69F92783"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Legal Proceedings</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s93A3627F36D955458EED3E4C69F92783">31</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s50578102CEF856968BBAF0D7C3A79B53"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Item&#160;1A.</font></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s50578102CEF856968BBAF0D7C3A79B53"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Risk Factors</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s50578102CEF856968BBAF0D7C3A79B53">31</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s4B5FCD11A4A75DF68749722D752747B8"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Item&#160;2.</font></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s4B5FCD11A4A75DF68749722D752747B8"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Unregistered Sales of Equity Securities and Use of Proceeds</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s4B5FCD11A4A75DF68749722D752747B8">31</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s1CD998E2B0555212AFA8BAF705F34546"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Item&#160;3.</font></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s1CD998E2B0555212AFA8BAF705F34546"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Defaults Upon Senior Securities</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s1CD998E2B0555212AFA8BAF705F34546">31</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s55B39FF0982257D3B651BE376D8120E4"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Item&#160;4.</font></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s55B39FF0982257D3B651BE376D8120E4"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Mine Safety Disclosures</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s55B39FF0982257D3B651BE376D8120E4">31</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sD7021E8D8C9B5595900DE30DFB15316A"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Item&#160;5.</font></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sD7021E8D8C9B5595900DE30DFB15316A"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Other Information</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#sD7021E8D8C9B5595900DE30DFB15316A">31</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s80DBF714EE78532194C9D08155DD077F"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Item&#160;6.</font></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s80DBF714EE78532194C9D08155DD077F"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Exhibits</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s80DBF714EE78532194C9D08155DD077F">32</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s658B5738DA3D54A99B8803F464F776FA"><font style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;">Signatures</font></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><a style="font-family:Arial;font-size:10pt;color:#000000;text-decoration:none;" href="#s658B5738DA3D54A99B8803F464F776FA">33</a></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">2</font></div></div><hr style="page-break-after:always"><div><a name="sFFA20680D97B52E38A64AED957D3454D"></a></div><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">PART I: FINANCIAL INFORMATION</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">ITEM 1: FINANCIAL STATEMENTS</font></div><div><a name="s1089691C7A33589C88BBCF8911D18132"></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">CONSOLIDATED STATEMENTS OF OPERATIONS</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(In thousands, except per share amounts)</font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;">&#160;</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:45%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;font-weight:bold;">(unaudited)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;font-weight:bold;">(unaudited)</font></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue</font></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">232,221</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">266,042</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">613,052</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">583,161</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cost of revenue</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">58,860</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">68,061</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">153,227</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">142,757</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross margin</font></div></td><td colspan="2" style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">173,361</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">197,981</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">459,825</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">440,404</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Research, development, and engineering expenses</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">29,700</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">26,078</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">87,664</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">72,225</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Selling, general, and administrative expenses</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">65,817</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">61,054</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">196,266</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">160,093</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Operating income</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">77,844</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">110,849</font></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">175,895</font></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">208,086</font></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign currency gain (loss)</font></div></td><td colspan="2" style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(379</font></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(127</font></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(708</font></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(574</font></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Investment income</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">3,937</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,475</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">10,736</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,625</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other income (expense)</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(129</font></div></td><td style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(445</font></div></td><td style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(98</font></div></td><td style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(344</font></div></td><td style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income before income tax expense</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">81,273</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">112,752</font></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">185,825</font></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">213,793</font></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income tax expense (benefit)</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">837</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10,259</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">11,976</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,334</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net income</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">80,436</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">102,493</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">173,849</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">204,459</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td colspan="16" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net income per weighted-average common and common-equivalent share:</font></div><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Basic</font></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">0.47</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.59</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1.01</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.18</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:middle;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Diluted</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">0.45</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.57</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">0.98</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.14</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:8px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:8px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:8px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:8px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:8px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:8px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:8px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:8px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td colspan="16" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Weighted-average common and common-equivalent shares outstanding:</font></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Basic</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">172,189</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">173,234</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">172,613</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">173,052</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:middle;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Diluted</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">177,245</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">179,354</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">178,021</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">179,124</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash dividends per common share</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">0.0450</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.0425</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">0.1350</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:middle;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.1225</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;">&#160;</font><font style="font-family:Arial;font-size:10pt;">The accompanying notes are an integral part of these consolidated financial statements.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">3</font></div></div><hr style="page-break-after:always"><div><a name="sD686D6056D4C5390AD33A99C1A8F7C07"></a></div><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(In thousands)</font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;">&#160;</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:45%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;font-weight:bold;">(unaudited)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;font-weight:bold;">(unaudited)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net income</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">80,436</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">102,493</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">173,849</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">204,459</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other comprehensive income (loss), net of tax:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash flow hedges:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net unrealized gain (loss), net of tax of $0 and ($8) in the three-month periods and net of tax of $0 and ($5) in the nine-month periods, respectively</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(4</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(16</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Reclassification of net realized (gain) loss into current operations</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(56</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(21</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net change related to cash flow hedges</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(60</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(37</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Available-for-sale investments:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net unrealized gain (loss), net of tax of $24 and $41 in the three-month periods and net of tax of ($82) and $191 in the nine-month periods, respectively</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">522</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">419</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(180</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,237</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Reclassification of net realized (gain) loss into current operations</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(266</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(263</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(535</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(370</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net change related to available-for-sale investments</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">256</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">156</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(715</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">867</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign currency translation adjustments:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign currency translation adjustments</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,881</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,753</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(5,078</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">18,497</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net change related to foreign currency translation adjustments</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,881</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,753</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(5,078</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">18,497</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:21px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:21px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:21px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:21px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:21px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:21px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:21px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:21px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other comprehensive income (loss), net of tax</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,625</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,849</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(5,793</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">19,327</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Total comprehensive income</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">78,811</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">108,342</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">168,056</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">223,786</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The accompanying notes are an integral part of these consolidated financial statements.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">4</font></div></div><hr style="page-break-after:always"><div><a name="sE5D758E07DEC50D88BFF31ADDFB90963"></a></div><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">CONSOLIDATED BALANCE SHEETS</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(In thousands)</font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;">&#160;</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:63%;"></td><td style="width:1%;"></td><td style="width:16%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:16%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;font-weight:bold;">(unaudited)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">ASSETS</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Current assets:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash and cash equivalents</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">107,371</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">106,582</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Short-term investments</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">420,016</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">297,961</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accounts receivable, less reserves of $1,508 and $1,568 in 2018 and 2017, respectively</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">135,441</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">119,388</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Unbilled revenue</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">13,948</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">7,454</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Inventories</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">94,035</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">67,923</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Prepaid expenses and other current assets</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">27,687</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">30,683</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Total current assets</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">798,498</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">629,991</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Long-term investments</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">281,929</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">423,441</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Property, plant, and equipment, net</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">88,930</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">78,048</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Goodwill</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">113,208</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">113,208</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Intangible assets, net</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">10,882</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,189</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Deferred income taxes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">27,376</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">27,385</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other assets</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">3,873</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,491</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Total assets</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,324,696</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,287,753</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">LIABILITIES AND SHAREHOLDERS&#8217; EQUITY</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Current liabilities:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accounts payable</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">22,295</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">23,463</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accrued expenses</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">66,632</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">68,249</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accrued income taxes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">8,974</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">11,503</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Deferred revenue and customer deposits</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">13,252</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,420</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Total current liabilities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">111,153</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">112,635</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Deferred income taxes</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">372</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">312</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Reserve for income taxes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,646</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,488</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accrued income taxes</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">51,607</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">66,741</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other non-current liabilities</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,474</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,904</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Total liabilities</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">175,252</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">192,080</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Shareholders&#8217; equity:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Common stock, $.002 par value &#8211; Authorized: 300,000 and 200,000 shares in 2018 and 2017, respectively, issued and outstanding: 172,191 and 173,507 shares in 2018 and 2017, respectively</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">345</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">347</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Additional paid-in capital</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">518,556</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">461,338</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Retained earnings</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">670,935</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">668,587</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accumulated other comprehensive loss, net of tax</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(40,392</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(34,599</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Total shareholders&#8217; equity</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,149,444</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,095,673</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,324,696</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,287,753</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The accompanying notes are an integral part of these consolidated financial statements.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">5</font></div></div><hr style="page-break-after:always"><div><a name="sEB2FEFAB33D15B88918BCF407319DB8B"></a></div><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">COGNEX CORPORATION</font></div><div style="line-height:120%;text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">CONSOLIDATED STATEMENTS OF CASH FLOWS</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:9pt;">(In thousands)</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:63%;"></td><td style="width:1%;"></td><td style="width:16%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:16%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(unaudited)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash flows from operating activities:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net income</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">173,849</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">204,459</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Adjustments to reconcile net income to net cash provided by operating activities:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Stock-based compensation expense</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">31,339</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">23,355</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Depreciation of property, plant, and equipment</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">13,474</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,811</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Amortization of intangible assets</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,307</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,539</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Amortization of discounts or premiums on investments</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">123</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">188</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Realized (gain) loss on sale of investments</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(535</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(370</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revaluation of contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(50</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">88</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Change in deferred income taxes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">175</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1,830</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Change in operating assets and liabilities:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:68px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accounts receivable</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(18,136</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(58,379</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:68px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Unbilled revenue</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(6,542</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(46,010</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:68px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Inventories</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(27,699</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(18,550</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:68px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Prepaid expenses and other current assets</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(3,437</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(14,666</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:68px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accounts payable</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,182</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">19,132</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:68px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accrued expenses</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,266</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,819</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:68px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accrued income taxes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(17,497</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,724</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:68px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Deferred revenue and customer deposits</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,841</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,883</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:68px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,604</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,861</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net cash provided by operating activities</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">151,692</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">140,054</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash flows from investing activities:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Purchases of investments</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(616,047</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(415,508</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Maturities and sales of investments</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">635,119</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">428,076</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Purchases of property, plant, and equipment</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(27,356</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(20,044</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash paid for acquisition of business</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(24,118</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Legal fees paid from sale of discontinued business</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(291</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net cash provided by (used in) investing activities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(8,284</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(31,885</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash flows from financing activities:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Issuance of common stock under stock plans</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">25,882</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">44,750</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Repurchase of common stock</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(142,262</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(99,347</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Payment of dividends</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(23,283</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(21,236</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Payment of contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,000</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1,926</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net cash provided by (used in) financing activities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(140,663</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(77,759</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Effect of foreign exchange rate changes on cash and cash equivalents</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,956</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,298</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net change in cash and cash equivalents</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">789</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">31,708</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash and cash equivalents at beginning of period</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">106,582</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">79,641</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash and cash equivalents at end of period</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">107,371</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">111,349</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The accompanying notes are an integral part of these consolidated financial statements.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">6</font></div></div><hr style="page-break-after:always"><div><a name="s5FB89B70A12058A6975BFDB8E772FE13"></a></div><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">CONSOLIDATED STATEMENT OF SHAREHOLDERS&#8217; EQUITY</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(In thousands)</font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;">&#160;</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="23"></td></tr><tr><td style="width:30%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Common Stock</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Additional</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Paid-in Capital</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Retained Earnings</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Accumulated</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Other</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Comprehensive</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Loss</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Shareholders&#8217;</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Equity</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Shares</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Par&#160;Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">173,507</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">347</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">461,338</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">668,587</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(34,599</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,095,673</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Issuance of common stock under stock plans</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,434</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">25,879</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">25,882</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Repurchase of common stock</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(2,750</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(5</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(142,257</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(142,262</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Stock-based compensation expense</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">31,339</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">31,339</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Payment of dividends</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(23,283</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(23,283</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Adjustment as a result of the adoption of ASU 2016-06 "Income Taxes - Intra-Entity Transfers Other than Inventory" (Note 12)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(5,961</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(5,961</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Net income</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">173,849</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">173,849</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Net unrealized gain (loss) on available-for-sale investments, net of tax of ($82)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(180</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(180</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Reclassification of net realized (gain) loss on the sale of available-for-sale investments</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(535</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(535</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Foreign currency translation adjustment</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(5,078</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(5,078</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">Balance as of September 30, 2018 (unaudited)</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">172,191</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">345</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">518,556</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">670,935</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(40,392</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,149,444</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The accompanying notes are an integral part of these consolidated financial statements.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">7</font></div></div><hr style="page-break-after:always"><div><a name="sCA5D6D6B97CE540AADE2CFDA84B7BCB6"></a></div><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:12pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</font><font style="font-family:Arial;font-size:12pt;font-weight:bold;">&#32;</font></div><div><a name="sDB490830532259AE8404FDA24BF8646C"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 1: Summary of Significant Accounting Policies</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As permitted by the rules of the Securities and Exchange Commission applicable to Quarterly Reports on Form                      10-Q, these notes are condensed and do not contain all disclosures required by generally accepted accounting principles (GAAP).  As a result of the adoption of ASC 606 "Revenue from Contracts with Customers," Cognex Corporation (the "Company") has provided disclosures related to revenue recognition in this Quarterly Report on Form 10-Q.  Reference should be made to the consolidated financial statements and related notes included in the Company&#8217;s Annual Report on Form 10-K for the year ended </font><font style="font-family:Arial;font-size:10pt;">December&#160;31, 2017</font><font style="font-family:Arial;font-size:10pt;">&#32;for a full description of significant accounting policies.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">In the opinion of the management of the Company, the accompanying consolidated unaudited financial statements contain all adjustments, consisting of normal, recurring adjustments and financial statement reclassifications, necessary to present fairly the Company&#8217;s financial position as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, and the results of its operations for the three-month and nine-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">, and changes in shareholders&#8217; equity, comprehensive income, and cash flows for the periods presented.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The results disclosed in the Consolidated Statements of Operations for the three-month and nine-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;are not necessarily indicative of the results to be expected for the full year.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Revenue Recognition</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company recognizes revenue in accordance with Accounting Standards Codification (ASC) 606, &#8220;Revenue from Contracts with Customers.&#8221; The core principle of ASC 606 is to recognize revenue in a manner that depicts the transfer of promised goods or services to customers in an amount that reflects the consideration to which the Company expects to be entitled in exchange for those goods or services.  The framework in support of this core principle includes: (1) identifying the contract with the customer; (2) identifying the performance obligations in the contract; (3) determining the transaction price; (4) allocating the transaction price to the performance obligations; and (5) recognizing revenue when (or as) the performance obligations are satisfied.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Identifying the Contract with the Customer</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company identifies contracts with customers as agreements that create enforceable rights and obligations, which typically take the form of customer contracts or purchase orders.  </font></div><div style="line-height:120%;padding-top:8px;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Identifying the Performance Obligations in the Contract</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company identifies performance obligations as promises in contracts to transfer distinct goods or services. Standard products and services that the Company regularly sells separately are accounted for as distinct performance obligations.  Application-specific customer solutions that are comprised of a combination of products and services are accounted for as one performance obligation to deliver a total solution to the customer.  On-site support services that are provided to the customer after the solution is deployed are accounted for as a separate performance obligation.  These solutions are provided to customers in a variety of industries, including the consumer electronics, logistics, and automotive industries.   </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Shipping and handling activities for which the Company is responsible under the terms and conditions of the sale are not accounted for as performance obligations but as fulfillment costs.  These activities are required to fulfill the Company&#8217;s promise to transfer the goods and are expensed when revenue is recognized.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company does not assess whether promised goods or services are performance obligations if they are immaterial in the context of the contract.  If revenue is recognized before immaterial promises have been completed, then the costs related to such immaterial promises are accrued at the time of sale.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Determining the Transaction Price</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company determines the transaction price as the amount of consideration it expects to receive in exchange for transferring promised goods or services to the customer.  Amounts collected from customers for sales taxes are excluded from the transaction price. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">If a contract includes a variable amount, such as a rebate, then the Company estimates the transaction price using either the expected value or the most likely amount of consideration to be received, depending upon the specific facts and circumstances.  The Company includes estimated variable consideration in the transaction price only to the extent it is probable that a significant reversal of revenue will not occur when the uncertainty is resolved.  The Company updates its estimate of variable consideration at the end of each reporting period to reflect changes in facts and circumstances.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">8</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Allocating the Transaction Price to the Performance Obligations</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company allocates the transaction price to each performance obligation at contract inception based on a relative stand-alone selling price basis, or the price at which the Company would sell the good or service separately to similar customers in similar circumstances.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Recognizing Revenue When (or As) the Performance Obligations are Satisfied</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company recognizes revenue when it transfers the promised goods or services to the customer.  Revenue for standard products is recognized at the point in time when the customer obtains control of the goods, which is typically upon delivery when the customer has legal title, physical possession, the risks and rewards of ownership, and an enforceable obligation to pay for the products.  Revenue for services, which are not material, is typically recognized over the time the service is provided.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue for application-specific customer solutions is recognized at the point in time when the solution is validated, which is the point in time when the Company can objectively determine that the agreed-upon specifications in the contract have been met and the customer will accept the performance obligations in the arrangement.  Although the customer may have taken legal title and physical possession of the goods when they arrived at the customer&#8217;s designated site, the significant risks and rewards of ownership transfer to the customer only upon validation.  Revenue for on-site support services related to these solutions is recognized over the time the service is provided.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">In certain instances, an arrangement may include customer-specified acceptance provisions or performance guarantees that allow the customer to accept or reject delivered products that do not meet the customer&#8217;s specifications.  If the Company can objectively determine that control of a good or service has been transferred to the customer in accordance with the agreed-upon specifications in the contract, then customer acceptance is a formality.  If acceptance provisions are presumed to be substantive, then revenue is deferred until customer acceptance.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">For the Company&#8217;s standard products and services, revenue recognition and billing typically occur at the same time.  For application-specific customer solutions, however, the agreement with the customer may provide for billing terms which differ from revenue recognition criteria, resulting in either deferred revenue or unbilled revenue.  Credit assessments are performed to determine payment terms, which vary by region, industry, and customer.  Prepayment terms result in contract liabilities for customer deposits.  When credit is granted to customers, payment is typically due 30 to 90 days from billing.  The Company's contracts have an original expected duration of less than one year, and therefore as a practical expedient, the Company has elected to ignore the impact of the time value of money on a contract and to expense sales commissions.  The Company recognizes an asset for costs to fulfill a contract if the costs relate directly to the contract and to future performance, and the costs are expected to be recovered.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Management exercises judgment when determining the amount of revenue to be recognized each period.  Such judgments include, but are not limited to, assessing the customer&#8217;s ability and intention to pay substantially all of the contract consideration when due, determining when two or more contracts should be combined and accounted for as a single contract, determining whether a contract modification has occurred, assessing whether promises are immaterial in the context of the contract, determining whether material promises in a contract represent distinct performance obligations, estimating the transaction price for a contract that contains variable consideration, determining the stand-alone selling price of each performance obligation, determining whether control is transferred over time or at a point in time for performance obligations, and assessing whether formal customer acceptance provisions are substantive. </font></div><div><a name="sC93E114727FF5518A3439F86C105DBED"></a></div><div style="line-height:120%;padding-top:12px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 2: New Pronouncements</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2016-02 and 2018-11, "Leases"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2016-02 creates Topic 842, Leases.  The objective of this ASU is to increase transparency and comparability among organizations by recognizing lease assets and lease liabilities on the balance sheet, and disclosing key information about leasing arrangements.  This ASU applies to any entity that enters into a lease, although lessees will see the most significant changes.  The main difference between current GAAP and Topic 842 is the recognition of lease assets and lease liabilities on the balance sheet for those leases classified as operating leases under current GAAP.  Topic 842 distinguishes between finance leases and operating leases, which are substantially similar to the classification criteria for distinguishing between capital leases and operating leases under current GAAP.  For public companies, the guidance in ASU 2016-02 is effective for annual periods beginning after December 15, 2018, and interim periods within those fiscal years.  In July 2018, the Financial Accounting Standards Board issued ASU 2018-11 to amend ASU 2016-02 and provided an additional (and optional) transition method to adopt the new lease standard.  This transition method allows entities to apply the new lease standard at the adoption date and recognize a cumulative-effect adjustment to the opening balance of retained earnings in the period of adoption instead of using the original modified retrospective transition method of adoption which required the restatement of all prior period financial statements.  Under this new transition method, the comparative periods presented in the financial statements will </font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">9</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">continue to be in accordance with current GAAP (Topic 840, Leases).  Management will adopt the new lease standard using this new transition method under ASU 2018-11.  As of the date of this report, management has determined the scope of leases subject to the new accounting requirements, has selected a software package to assist with compliance, and has reviewed all leases in scope.  Management is in the process of completing the implementation of the lease accounting software, training relevant employees, and finalizing the internal lease accounting policy and the related processes, internal controls, and disclosures. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2016-13, "Financial Instruments - Measurement of Credit Losses"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2016-13 applies to all reporting entities holding financial assets that are not accounted for at fair value through net income (debt securities).&#160; The amendments in this ASU eliminate the probable initial recognition threshold to recognize a credit loss under current GAAP and, instead, reflect an entity&#8217;s current estimate of all expected credit losses.  In addition, this ASU broadens the information an entity must consider in developing the credit loss estimate, including the use of reasonable and supportable forecasted information.&#160; The amendments in this ASU require that credit losses on available-for-sale debt securities be presented as an allowance rather than as a write-down and an entity will be able to record reversals of credit losses in current period net income.  For public companies, the guidance in ASU 2016-13 is effective for annual periods beginning after December 15, 2019, and interim periods within those fiscal years.&#160; This ASU should be applied through a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is effective.&#160; Management does not expect ASU 2016-13 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2017-08, "Receivables - Nonrefundable Fees and Other Costs - Premium Amortization on Purchased Callable Debt Securities"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2017-08 applies to all reporting entities that hold investments in callable debt securities that have an amortized cost basis in excess of the amount that is repayable by the issuer at the earliest call date (that is, at a premium). The amendments in this ASU shorten the amortization period for certain callable debt securities held at a premium. Specifically, the amendments require the premium to be amortized to the earliest call date.  The amendments do not require an accounting change for securities held at a discount; the discount continues to be amortized to maturity.   Under current GAAP, premiums and discounts on callable debt securities generally are amortized to the maturity date. If that callable debt security is subsequently called, the entity records a loss equal to the unamortized premium.  The amendments in this ASU more closely align the amortization period of premiums and discounts to expectations incorporated in market pricing on the underlying securities.  For public companies, the amendments in ASU 2017-08 are effective for annual periods beginning after December 15, 2019, and interim reporting periods within fiscal years beginning after December 15, 2020.  This ASU should be applied on a modified retrospective basis through a cumulative-effect adjustment directly to retained earnings as of the beginning of the period of adoption, and, in the period of adoption, the entity is required to provide disclosures about the change in accounting principle.  Early adoption is permitted, including adoption in an interim period.  Management does not expect ASU 2017-08 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2017-12, "Derivatives and Hedging - Targeted Improvements to Accounting for Hedging Activities"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2017-12 applies to all reporting entities that elect to apply hedge accounting.  The hedge accounting requirements under current GAAP sometimes do not permit an entity to properly recognize the economic results of the hedging strategy in the financial statements, and they are difficult to understand and interpret.  The amendments in this ASU make certain targeted improvements to simplify the application of the hedge accounting guidance.  Also, they better align the risk management activities and financial reporting for hedging relationships through changes to both 1) the designation and measurement guidance for qualifying hedging relationships and 2) the presentation of hedge results.  For public companies, the amendments in ASU 2017-12 are effective for annual reporting periods beginning after December 15, 2018, and interim reporting periods within those fiscal years.  Early adoption is permitted including adoption in any interim period after issuance of the ASU.  All transition requirements and elections should be applied to hedging relationships existing on the date of adoption.  The entity should apply a cumulative-effect adjustment related to eliminating the separate measurement of ineffectiveness to accumulated other comprehensive income with a corresponding adjustment to the opening balance of retained earnings as of the beginning of the fiscal year that an entity adopts the amendments in this ASU.  The amended presentation and disclosure guidance is required only prospectively.  Management does not expect ASU 2017-12 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2018-01, "Land Easement Practical Expedient for Transition to Topic 842"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2018-01 applies to entities with land easements that exist or expired before an entity&#8217;s adoption of Topic 842, provided that the entity does not account for those land easements as leases under Topic 840.  The amendments in </font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">10</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">this ASU permit an entity to elect an optional transition practical expedient to not evaluate under Topic 842 land easements that exist or expired before the entity&#8217;s adoption of Topic 842 and that were not previously accounted for as leases under Topic 840.  An entity that elects this practical expedient should apply the practical expedient consistently to all of its existing or expired land easements that were not previously accounted for as leases under Topic 840.  Once an entity adopts Topic 842, it should apply that Topic prospectively to all new (or modified) land easements to determine whether the arrangement should be accounted for as a lease.  An entity that does not elect this practical expedient should evaluate all existing or expired land easements in connection with the adoption of the new lease requirements in Topic 842 to assess whether they meet the definition of a lease.  The amendments in this ASU affect the amendments in ASU 2016-02, which are not yet effective but may be early adopted.  The effective date and transition requirements for the amendments are the same as the effective date and transition requirements in ASU 2016-02, which is for annual periods beginning after December 15, 2018, and interim periods within those fiscal years. Management does not expect ASU 2018-01 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2018-02, "Income Statement - Reporting Comprehensive Income"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2018-02 applies to entities required to apply the provisions of Topic 220, Income Statement - Reporting Comprehensive Income, and has items of other comprehensive income for which the related tax effects are presented in other comprehensive income as required by GAAP.  The amendments in this ASU allow a reclassification from accumulated other comprehensive income to retained earnings for stranded tax effects resulting from the Tax Cuts and Jobs Act of 2017 (the "Tax Act").  Consequently, the amendments eliminate the stranded tax effects resulting from the Tax Act and will improve the usefulness of information reported to financial statement users.  However, because the amendments only relate to the reclassification of the income tax effects of the Tax Act, the underlying guidance that requires the effect of a change in tax laws or rates to be included in income from continuing operations is not affected.  The amendments in this ASU also require certain disclosures about stranded tax effects.  The amendments in this ASU are effective for all entities for fiscal years beginning after December 15, 2018, and interim periods within those fiscal years.  Early adoption of the amendments in this ASU is permitted, including adoption in any interim period.  The amendments in this ASU should be applied either in the period of adoption or retrospectively to each period (or periods) in which the effect of the change in the U.S. federal corporate income tax rate in the Tax Act is recognized.  Management does not expect ASU 2018-02 to have a material impact on the Company's financial statements and disclosures. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2018-07, "Compensation - Stock Compensation - Improvements to Nonemployee Share-Based Payment Accounting"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2018-07 applies to all entities that enter into share-based payment transactions for acquiring goods and services from nonemployees.  The amendments in this ASU expand the scope of Topic 718, Compensation - Stock Compensation, to include share-based payments transactions to nonemployees.  Changes to the accounting for nonemployee awards as a result of this ASU include: 1) equity-classified nonemployee share-based payment awards are measured at the grant date, instead of the previous requirement to remeasure the awards through the performance completion date, 2) for awards with performance conditions, compensation cost is recognized when the achievement of the performance condition is probable, rather than upon achievement, and 3) the current requirement to reassess the classification (equity or liability) for nonemployee awards upon vesting is eliminated.  This ASU clarifies that Topic 718 does not apply to financing transactions or awards granted to customers as part of a contract accounted for under Topic 606, Revenue from Contracts with Customers.  The amendments in this ASU are effective for public business entities for fiscal years beginning after December 15, 2018, and interim periods within those fiscal years.  An entity should only remeasure liability-classified awards that have not been settled by the date of adoption and equity-classified awards for which the measurement date has not been established through a cumulative-effect adjustment to retained earnings as of the beginning of the fiscal year of adoption.  Management does not expect ASU 2018-07 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2018-15, "Intangibles - Goodwill and Other - Internal-Use Software"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2018-15 applies to entities that are a customer in a hosting arrangement that is a service contract.  The amendments  in this ASU align the requirements for capitalizing implementation costs incurred in a hosting arrangement that is a service contract with the requirements for capitalizing implementation costs incurred to develop or obtain internal-use software.  Accordingly, the amendments in this ASU require an entity in a hosting arrangement that is a service contract to follow the guidance in Subtopic 350-40 to determine which implementation costs to capitalize as an asset related to the service contract and which costs to expense. Further, it requires the entity to expense the capitalized implementation costs over the term of the hosting arrangement.  In addition, it requires the presentation of the expenses related to the capitalized implementation costs in the same line item in the statement of income as the fees associated with the hosting element of the arrangement and the classification of the payments for the capitalized implementation costs in the statement of cash flows in the same manner as the payments made for the fees associated with the hosting </font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">11</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">element.  The amendments in this ASU are effective for public entities for fiscal years beginning after December 15, 2019, and interim periods within those fiscal years, with early adoption permitted.  Management does not expect ASU 2018-15 to have a material impact on the Company's financial statement and disclosures.</font></div><div><a name="s75F72525DB725F9B96EAE9A3D85709E4"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 3: Fair Value Measurements</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Financial Assets and Liabilities that are Measured at Fair Value on a Recurring Basis</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the financial assets and liabilities required to be measured at fair value on a recurring basis as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;(in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:50%;"></td><td style="width:1%;"></td><td style="width:14%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:14%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:14%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Quoted&#160;Prices&#160;in</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Active Markets</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">for Identical</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Assets (Level 1)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Significant&#160;    Other</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Observable</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Inputs (Level 2)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;"><br>Unobservable<br>Inputs                                                                                                                                                                             (Level 3)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Assets:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Money market instruments</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,717</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">314,106</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">226,058</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">131,549</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">14,437</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,909</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,886</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Economic hedge forward contracts</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">21</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Liabilities:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Economic hedge forward contracts</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">91</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Contingent consideration liabilities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,507</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s money market instruments are reported at fair value based upon the daily market price for identical assets in active markets, and are therefore classified as Level 1. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s debt securities and forward contracts are reported at fair value based upon model-driven valuations in which all significant inputs are observable or can be derived from or corroborated by observable market data for substantially the full term of the asset or liability, and are therefore classified as Level 2.  Management is responsible for estimating the fair value of these financial assets and liabilities, and in doing so, considers valuations provided by a large, third-party pricing service.  For debt securities, this service maintains regular contact with market makers, brokers, dealers, and analysts to gather information on market movement, direction, trends, and other specific data.  They use this information to structure yield curves for various types of debt securities and arrive at the daily valuations.  The Company's forward contracts are typically traded or executed in over-the-counter markets with a high degree of pricing transparency.  The market participants are generally large commercial banks.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company did not record an other-than-temporary impairment of these financial assets during the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company's contingent consideration liabilities are reported at fair value based upon probability-adjusted present values of the consideration expected to be paid using significant inputs that are not observable in the market and are therefore classified as Level 3.  Key assumptions used in these estimates include probability assessments with respect to the likelihood of achieving certain revenue milestones.  The fair values of these contingent consideration liabilities were calculated using discount rates consistent with the level of risk of achievement, and are remeasured each reporting period with changes in fair value recorded in "Other income (expense)" on the Consolidated Statements of Operations.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the activity for the Company's liability measured at fair value using Level 3 inputs for the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;(in thousands):</font></div><div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"></td></tr><tr><td style="width:85%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,557</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Fair value adjustment to Manatee contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1,350</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Fair value adjustment to GVi contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,130</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Fair value adjustment to Chiaro contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">170</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Payment of GVi contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1,000</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,507</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">12</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED) </font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Non-financial Assets that are Measured at Fair Value on a Non-recurring Basis</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Non-financial assets such as property, plant and equipment, goodwill, and intangible assets are required to be measured at fair value only when an impairment loss is recognized.  The Company did not record an impairment charge related to these assets during the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;and October 1, 2017.</font></div><div><a name="sB40DA6C53E2A5A4CB27887797699E3F7"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 4: Cash, Cash Equivalents, and Investments</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash, cash equivalents, and investments consisted of the following (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:63%;"></td><td style="width:1%;"></td><td style="width:16%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:16%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">104,654</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">97,951</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Money market instruments</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,717</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,631</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash and cash equivalents</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">107,371</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">106,582</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">193,347</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">150,371</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">138,099</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">47,395</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">71,438</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">59,203</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">8,119</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">21,579</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,044</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,805</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10,608</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Short-term investments</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">420,016</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">297,961</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">176,007</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">296,014</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">60,111</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">71,727</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">32,711</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">23,459</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,318</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,147</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,940</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">14,890</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">842</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,204</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Long-term investments</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">281,929</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">423,441</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">809,316</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">827,984</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills consist of debt securities issued by the U.S. government; corporate bonds consist of debt securities issued by both domestic and foreign companies; asset-backed securities consist of debt securities collateralized by pools of receivables or loans with credit enhancement; sovereign bonds consist of direct debt issued by foreign governments; municipal bonds consist of debt securities issued by state and local government entities; and agency bonds consist of domestic or foreign obligations of government agencies and government sponsored enterprises that have government backing. All securities are denominated in U.S. Dollars.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">13</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED) </font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the Company&#8217;s available-for-sale investments as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;(in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:44%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Amortized<br>Cost</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Gross<br>Unrealized<br>Gains</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Gross<br>Unrealized<br>Losses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Fair&#160;Value</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Short-term:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">193,631</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(284</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">193,347</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">138,383</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">56</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(340</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">138,099</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">71,646</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(209</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">71,438</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,172</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(53</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,119</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,050</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(6</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,044</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Long-term:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">175,881</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">469</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(343</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">176,007</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">60,276</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">33</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(198</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">60,111</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32,718</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">7</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(14</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32,711</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,286</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,318</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,930</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,940</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">855</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(13</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">842</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">702,797</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">608</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,460</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">701,945</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the Company&#8217;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;(in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"><tr><td colspan="24"></td></tr><tr><td style="width:29%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="15" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Unrealized Loss Position For:</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Less than 12 Months</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">12 Months or Greater</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Fair&#160;Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Unrealized</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Losses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Fair&#160;Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Unrealized</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Losses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Fair&#160;Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Unrealized</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Losses</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">137,108</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(174</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">63,030</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(124</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">200,138</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(298</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">116,028</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(386</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">42,922</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(297</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">158,950</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(683</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">57,678</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(207</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">38,256</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(200</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">95,934</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(407</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,527</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(6</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,592</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(47</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,119</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(53</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,854</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(6</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">842</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(13</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,696</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(19</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">317,195</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(779</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">149,642</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(681</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">466,837</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,460</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, the Company did not recognize any other-than-temporary impairment of these investments.  In its evaluation, management considered the type of security, the credit rating of the security, the length of time the security has been in a loss position, the size of the loss position, the Company's intent and ability to hold the security to expected recovery of value, and other meaningful information.  The Company does not intend to sell, and is unlikely to be required to sell, any of these available-for-sale investments before their effective maturity or market price recovery.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company recorded gross realized gains and gross realized losses on the sale of debt securities totaling </font><font style="font-family:Arial;font-size:10pt;">$283,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$17,000</font><font style="font-family:Arial;font-size:10pt;">, respectively, during the three-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$306,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$43,000</font><font style="font-family:Arial;font-size:10pt;">, respectively, during the three-month period ended </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">.  The Company recorded gross realized gains and gross realized losses on the sale of debt securities totaling </font><font style="font-family:Arial;font-size:10pt;">$646,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$111,000</font><font style="font-family:Arial;font-size:10pt;">, respectively, during the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$449,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$79,000</font><font style="font-family:Arial;font-size:10pt;">, respectively, during the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">.  These gains and losses are included in "Investment income" on the Consolidated Statement of Operations.  Prior to the sale of these securities, unrealized gains and losses for these debt securities, net of tax, are recorded in shareholders&#8217; equity as accumulated other comprehensive income (loss).</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">14</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED) </font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table presents the effective maturity dates of the Company&#8217;s available-for-sale investments as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;(in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.22027290448344%;border-collapse:collapse;text-align:left;"><tr><td colspan="28"></td></tr><tr><td style="width:24%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">&lt;1 year</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">1-2 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">2-3 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">3-4 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">4-5 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">5-7 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">138,099</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">80,605</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">68,684</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">22,429</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,434</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,855</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">314,106</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">193,347</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32,711</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">226,058</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">71,438</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">30,840</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,431</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">12,102</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,138</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,600</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">131,549</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,119</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,318</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">14,437</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,940</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,909</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,044</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">842</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,886</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">420,016</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">151,316</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">74,115</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">40,471</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,572</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">9,455</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">701,945</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div><a name="s218D96D7CC64532EB9689A35EDEF6EBE"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 5: Inventories</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Inventories consisted of the following (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:63%;"></td><td style="width:1%;"></td><td style="width:16%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:16%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Raw materials</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">46,660</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">33,927</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Work-in-process</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,071</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,114</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Finished goods</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">43,304</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">31,882</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">94,035</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">67,923</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div><a name="s750A2C0DD73A5A59945CC29CD77A0235"></a></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 6:&#160; Intangible Assets</font></div><div style="line-height:120%;padding-top:6px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Amortized intangible assets consisted of the following (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:53%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Gross</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Carrying</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Accumulated</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Amortization</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Net</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Carrying</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Distribution networks</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">38,060</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">38,060</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Completed technologies</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">13,687</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,010</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">7,677</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Customer relationships</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">8,607</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,587</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">3,020</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Non-compete agreements</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">370</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">185</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">185</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">60,724</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">49,842</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">10,882</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:inherit;font-size:8pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Gross</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Carrying</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Accumulated</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Amortization</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Net</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Carrying</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Distribution networks</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">38,060</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">38,060</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Completed technologies</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,687</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,181</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,506</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Customer relationships</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,607</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,202</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,405</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Non-compete agreements</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">370</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">92</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">278</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">60,724</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">47,535</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,189</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">15</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED) </font></div></div><div><br></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As of September 30, 2018, estimated future amortization expense related to intangible assets is as follows (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:82%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:15%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;font-weight:bold;text-decoration:underline;">Year Ended December&#160;31,</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;font-weight:bold;">Amount</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Remainder of fiscal 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">769</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2019</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,701</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2020</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,185</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2021</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,017</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2022</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,691</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2023</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">989</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Thereafter</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">530</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">10,882</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div><a name="s59501C1DC1EE59E3A86F3DE55AC97320"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 7: Warranty Obligations</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company records the estimated cost of fulfilling product warranties at the time of sale based upon historical costs to fulfill claims.  Obligations may also be recorded subsequent to the time of sale whenever specific events or circumstances impacting product quality become known that would not have been taken into account using historical data.  While we engage in extensive product quality programs and processes, including actively monitoring and evaluating the quality of our component suppliers and third-party contract manufacturers, the Company&#8217;s warranty obligation is affected by product failure rates, material usage, and service delivery costs incurred in correcting a product failure.  An adverse change in any of these factors may result in the need for additional warranty provisions. Warranty obligations are included in &#8220;Accrued expenses&#8221; on the Consolidated Balance Sheets.</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The changes in the warranty obligation were as follows (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"></td></tr><tr><td style="width:82%;"></td><td style="width:1%;"></td><td style="width:16%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,701</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Provisions for warranties issued during the period</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,376</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Fulfillment of warranty obligations</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(3,223</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign exchange rate changes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(117</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,737</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div><a name="sB9386EF274C95CC0A9D5EF6958E1AD0F"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 8: Derivative Instruments</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s foreign currency risk management strategy is principally designed to mitigate the potential financial impact of changes in the value of transactions and balances denominated in foreign currencies resulting from changes in foreign currency exchange rates.  Currently, the Company enters into </font><font style="font-family:Arial;font-size:10pt;">two</font><font style="font-family:Arial;font-size:10pt;">&#32;types of hedges to manage this risk.  The first are economic hedges which utilize foreign currency forward contracts with maturities of up to </font><font style="font-family:Arial;font-size:10pt;">45</font><font style="font-family:Arial;font-size:10pt;">&#32;days to manage the exposure to fluctuations in foreign currency exchange rates arising primarily from foreign-denominated receivables and payables.  The gains and losses on these derivatives are intended to be offset by the changes in the fair value of the assets and liabilities being hedged.  These economic hedges are not designated as hedging instruments for hedge accounting treatment.  The second are cash flow hedges which utilize foreign currency forward contracts with maturities of up to </font><font style="font-family:Arial;font-size:10pt;">18 months</font><font style="font-family:Arial;font-size:10pt;">&#32;to hedge specific forecasted transactions of the Company's foreign subsidiaries with the goal of protecting the Company's budgeted revenues and expenses against foreign currency exchange rate changes compared to its budgeted rates.  These cash flow hedges are designated as hedging instruments for hedge accounting treatment. </font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">16</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED) </font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company had the following outstanding forward contracts (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="14"></td></tr><tr><td style="width:47%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Currency</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Notional<br>Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">USD<br>Equivalent</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Notional<br>Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">USD<br>Equivalent</font></div></td></tr><tr><td colspan="7" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Derivatives Not Designated as Hedging Instruments:</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Euro</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">19,500</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">22,602</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Japanese Yen</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">455,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">455,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,049</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">British Pound</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,100</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,742</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,650</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,232</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Hungarian Forint</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">700,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,513</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">545,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,110</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Korean Won</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,050,000</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,847</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,825,000</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,708</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Taiwanese Dollar</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">49,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,615</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">37,725</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,278</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Canadian Dollar</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">800</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">616</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Singapore Dollar</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">760</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">557</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Swiss Franc</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,365</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,401</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Information regarding the fair value of the outstanding forward contracts was as follows (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="20"></td></tr><tr><td style="width:12%;"></td><td style="width:17%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Asset Derivatives</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Liability Derivatives</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Balance</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Fair Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Balance</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Fair Value</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Sheet<br>Location</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December 31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Sheet<br>Location</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December 31, 2017</font></div></td></tr><tr><td colspan="10" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Derivatives Not Designated as Hedging Instruments:<br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Economic hedge forward contracts</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Prepaid&#160;expenses&#160;and other current assets</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">16</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accrued expenses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">91</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table presents the gross activity for all derivative assets and liabilities which were presented on a net basis on the Consolidated Balance Sheets due to the right of offset with each counterparty (in thousands):</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"><tr><td colspan="19"></td></tr><tr><td style="width:18%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:19%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td></tr><tr><td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Asset Derivatives</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Liability Derivatives</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September&#160;30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December&#160;31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September&#160;30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December&#160;31, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross amounts of recognized assets</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">16</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross amounts of recognized liabilities</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">91</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross amounts offset</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross amounts offset</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net amount of assets presented</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">16</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net amount of liabilities presented</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">91</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">17</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED) </font></div></div><div><br></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Information regarding the effect of derivative instruments on the consolidated financial statements was as follows (in thousands):</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="18"></td></tr><tr><td style="width:22%;"></td><td style="width:21%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Location in Financial Statements</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td colspan="11" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Derivatives Designated as Hedging Instruments:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gains (losses) recorded in shareholders' equity (effective portion)</font></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accumulated other comprehensive income (loss), net of tax</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations (effective portion)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">56</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Research, development, and engineering expenses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Selling, general, and administrative expenses</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Total gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">56</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gains (losses) recognized in current operations (ineffective portion and discontinued derivatives)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign currency gain (loss)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td colspan="11" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Derivatives Not Designated as Hedging Instruments:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gains (losses) recognized in current operations</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign currency gain (loss)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">299</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">43</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(366</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">139</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div><a name="sA323A46489885A06B0DC728125761E16"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 9: Revenue Recognition</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">On January 1, 2018, the Company adopted Accounting Standards Codification (ASC) 606, "Revenue from Contracts with Customers," using the full retrospective method to present all periods reported on a consistent basis.  Accordingly, prior-period results have been restated to apply the provisions of this ASC.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As a result of this adoption, revenue for software-only products sold as part of multiple-deliverable arrangements are no longer deferred when vendor-specific objective evidence of fair value does not exist for the undelivered elements of the arrangement. This change results in earlier recognition of revenue.  In addition, certain of the Company&#8217;s product accessory sales, which were reported on a net basis, are now reported on a gross basis as a result of applying the expanded guidance in the new standard related to principal versus agent considerations.  This change results in the Company reporting higher revenue and higher cost of revenue when these sales are reported on a gross basis, although the gross margin dollars do not change.  Furthermore, for arrangements that include customer-specified acceptance criteria, revenue is recognized when the Company can objectively determine that control has been transferred to the customer in accordance with the agreed-upon specifications in the contract, which may occur before formal customer acceptance.  This change primarily impacts revenue recognition for arrangements in the logistics industry where certain customer solutions include installed products and results in earlier recognition of revenue.</font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">18</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED) </font></div></div><div><br></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The adoption of the standard impacted our previously-reported results as follows (in thousands):</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="24"></td></tr><tr><td style="width:30%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Statement of Operations</font></div><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As previously reported</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Adjustment</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As restated</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As previously reported</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Adjustment</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As restated</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">259,739</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,303</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">266,042</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">567,585</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">15,576</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">583,161</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cost of revenue</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">62,360</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,701</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">68,061</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">128,056</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">14,701</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">142,757</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross margin</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">197,379</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">602</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">197,981</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">439,529</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">875</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">440,404</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Operating income</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">110,247</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">602</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">110,849</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">207,211</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">875</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">208,086</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income before income tax expense</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">112,150</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">602</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">112,752</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">212,918</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">875</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">213,793</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income tax expense (benefit)</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,802</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">457</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10,259</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,843</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">491</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,334</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net income</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">102,348</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">145</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">102,493</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">204,075</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">384</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">204,459</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td colspan="24" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net income per weighted-average common and common-equivalent share:</font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Basic</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.59</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.59</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.18</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.18</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Diluted</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.57</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.57</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.14</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.14</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.609375%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:58%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Balance Sheet</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As previously reported</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Adjustment</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As restated</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Prepaid expenses and other current assets</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">30,800</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(117</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">30,683</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accrued income taxes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">11,391</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">112</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">11,503</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Deferred revenue and customer deposits</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(549</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,420</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Retained earnings</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">668,267</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">320</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">668,587</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands):</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"></td></tr><tr><td style="width:38%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Europe</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">115,592</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">146,230</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">242,161</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">252,386</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Americas</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">58,830</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">54,902</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">189,859</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">155,977</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Greater China</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">32,796</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">35,546</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">101,130</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">84,764</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other Asia</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">25,003</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">29,364</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">79,902</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">90,034</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">232,221</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">266,042</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">613,052</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">583,161</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">19</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED) </font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes disaggregated revenue information by revenue type (in thousands):</font></div><div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"></td></tr><tr><td style="width:38%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Standard products and services</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">150,993</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">159,981</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">493,019</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">453,464</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Application-specific customer solutions</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">81,228</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">106,061</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">120,033</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">129,697</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">232,221</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">266,042</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">613,052</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">583,161</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Costs to Fulfill a Contract</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Costs to fulfill a contract are included in "Prepaid expenses and other current assets" on the Consolidated Balance Sheet and amounted to </font><font style="font-family:Arial;font-size:10pt;">$6,811,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$3,230,000</font><font style="font-family:Arial;font-size:10pt;">&#32;as of September 30, 2018 and December 31, 2017, respectively.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounts Receivable, Contract Assets, and Contract Liabilities</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accounts receivable represent amounts billed and currently due from customers which are reported at their net estimated realizable value.  The Company maintains reserves against its accounts receivable for potential credit losses.  Credit losses recognized on accounts receivable were immaterial for the three-month and nine-month periods ended  September 30, 2018 and October 1, 2017, respectively.  Contract assets consist of unbilled revenue which arises when revenue is recognized in advance of billing for certain application-specific customer solutions contracts.  Contract liabilities consist of deferred revenue and customer deposits which arise when amounts are billed to or collected from customers in advance of revenue recognition.</font></div><div style="line-height:120%;padding-top:4px;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the deferred revenue and customer deposits activity for the nine-month period ended September 30, 2018 (in thousands):</font></div><div style="line-height:120%;padding-top:4px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.609375%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"></td></tr><tr><td style="width:80%;"></td><td style="width:1%;"></td><td style="width:18%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Amount</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,420</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Increases to deferred revenue and customer deposits</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">55,408</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Recognition of revenue</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(50,590</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign exchange rate changes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(986</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">13,252</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:4px;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As a practical expedient, the Company has elected not to disclose the aggregate amount of the transaction price allocated to unsatisfied performance obligations, as our contracts have an original expected duration of less than one year.</font></div><div><a name="sAEF8DD0A366D55F7A233F0803ECB566D"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 10: Stock-Based Compensation Expense</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s share-based payments that result in compensation expense consist of stock option grants and restricted stock awards.  As of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, the Company had </font><font style="font-family:Arial;font-size:10pt;">20,246,002</font><font style="font-family:Arial;font-size:10pt;">&#32;shares available for grant.  Stock options are granted with an exercise price equal to the market value of the Company&#8217;s common stock at the grant date and generally vest over </font><font style="font-family:Arial;font-size:10pt;">four</font><font style="font-family:Arial;font-size:10pt;">&#32;or five years based upon continuous service and expire </font><font style="font-family:Arial;font-size:10pt;">ten</font><font style="font-family:Arial;font-size:10pt;">&#32;years from the grant date.  Vesting of restricted stock awards may be based on continuing employment and/or achievement of pre-established performance goals and objectives.  Vesting for performance-based restricted stock awards and time-based restricted stock awards must not be less than </font><font style="font-family:Arial;font-size:10pt;">one</font><font style="font-family:Arial;font-size:10pt;">&#32;year and </font><font style="font-family:Arial;font-size:10pt;">three</font><font style="font-family:Arial;font-size:10pt;">&#32;years, respectively; however, awards with time-based vesting may become vested incrementally over such three-year period.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">20</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED) </font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the Company&#8217;s stock option activity for the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">:</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"></td></tr><tr><td style="width:39%;"></td><td style="width:14%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:15%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Shares</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(in&#160;thousands)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Weighted-</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Average</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Exercise</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Price</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Weighted-</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Average</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Remaining</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Contractual</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Term&#160;(in&#160;years)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Aggregate</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Intrinsic</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(in&#160;thousands)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Outstanding as of December 31, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">12,726</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">25.24</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Granted</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,318</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">55.66</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Exercised</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1,434</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">18.06</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Forfeited or expired</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(429</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">33.24</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Outstanding as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">13,181</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">31.11</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">7.48</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">329,301</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Exercisable as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,327</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">20.14</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6.01</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">154,377</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Options vested or expected to vest as of September 30, 2018 (1)</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">11,916</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">29.99</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">7.37</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">310,772</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-align:justify;padding-left:48px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;(1) In addition to the vested options, the Company expects a portion of the unvested options to vest at some point in the future.  Options expected to vest are calculated by applying an estimated forfeiture rate to the unvested options.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The fair values of stock options granted in each period presented were estimated using the following weighted-average assumptions:</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:39%;"></td><td style="width:14%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:14%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months&#160;Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Risk-free rate</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2.9</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2.4</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2.9</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2.4</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Expected dividend yield</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">0.32</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.39</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">0.32</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.39</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Expected volatility</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">39</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">41</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">39</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">41</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Expected term (in years)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5.4</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5.1</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5.3</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5.3</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Risk-free rate</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The risk-free rate was based upon a treasury instrument whose term was consistent with the contractual term of the option.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Expected dividend yield</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Generally, the current dividend yield is calculated by annualizing the cash dividend declared by the Company&#8217;s Board of Directors and dividing that result by the closing stock price on the grant date.&#160;</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Expected volatility</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The expected volatility was based upon a combination of historical volatility of&#160;the Company&#8217;s common stock over the contractual term of the option and implied volatility for traded options of the Company&#8217;s stock.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Expected term</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The expected term was derived from the binomial lattice model from the impact of events that trigger exercises over time.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company stratifies its employee population into </font><font style="font-family:Arial;font-size:10pt;">two</font><font style="font-family:Arial;font-size:10pt;">&#32;groups: one consisting of senior management and another consisting of all other employees.  The Company currently applies an estimated annual forfeiture rate of </font><font style="font-family:Arial;font-size:10pt;">8%</font><font style="font-family:Arial;font-size:10pt;">&#32;to all unvested options for senior management and a rate of </font><font style="font-family:Arial;font-size:10pt;">12%</font><font style="font-family:Arial;font-size:10pt;">&#32;for all other employees.  Each year during the first quarter, the company revises its estimated forfeiture rate.  This resulted in an increase to compensation expense of </font><font style="font-family:Arial;font-size:10pt;">$1,283,000</font><font style="font-family:Arial;font-size:10pt;">&#32;in 2018 and a decrease to compensation expense of </font><font style="font-family:Arial;font-size:10pt;">$673,000</font><font style="font-family:Arial;font-size:10pt;">&#32;in 2017.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The weighted-average grant-date fair values of stock options granted during the three-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">&#32;were </font><font style="font-family:Arial;font-size:10pt;">$22.52</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$14.80</font><font style="font-family:Arial;font-size:10pt;">, respectively.  The weighted-average grant-date fair values of stock options granted during the nine-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">&#32;were </font><font style="font-family:Arial;font-size:10pt;">$21.70</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$14.97</font><font style="font-family:Arial;font-size:10pt;">, respectively. </font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">21</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED) </font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The total intrinsic values of stock options exercised for the three-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">&#32;were </font><font style="font-family:Arial;font-size:10pt;">$17,985,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$28,462,000</font><font style="font-family:Arial;font-size:10pt;">, respectively.  The total intrinsic values of stock options exercised for the nine-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">&#32;were </font><font style="font-family:Arial;font-size:10pt;">$50,975,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$100,913,000</font><font style="font-family:Arial;font-size:10pt;">, respectively.  The total fair values of stock options vested for the three-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">&#32;were </font><font style="font-family:Arial;font-size:10pt;">$997,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$844,000</font><font style="font-family:Arial;font-size:10pt;">, respectively.  The total fair values of stock options vested for the nine-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">&#32;were </font><font style="font-family:Arial;font-size:10pt;">$27,557,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$19,557,000</font><font style="font-family:Arial;font-size:10pt;">, respectively.   </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, total unrecognized compensation expense related to non-vested stock options was </font><font style="font-family:Arial;font-size:10pt;">$50,387,000</font><font style="font-family:Arial;font-size:10pt;">, which is expected to be recognized over a weighted-average period of </font><font style="font-family:Arial;font-size:10pt;">1.61</font><font style="font-family:Arial;font-size:10pt;">&#32;years.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the Company's restricted stock activity for the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">: </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="11"></td></tr><tr><td style="width:48%;"></td><td style="width:15%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:14%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:16%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Shares                   (in thousands)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Weighted-Average     Grant Fair Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Aggregate Intrinsic Value                  (in thousands)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Nonvested as of December 31, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">20</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">17.03</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Granted</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Vested</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(20</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">17.03</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">993</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Forfeited or expired</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Nonvested as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The fair values of restricted stock awards granted were determined based upon the market value of the Company's common stock at the time of grant.  The initial cost was then amortized over the period of vesting until the restrictions lapsed.  These restricted shares became fully vested in 2018.  Participants were entitled to dividends on the restricted stock awards, but only received those amounts if the shares vested.  The sale or transfer of these shares was restricted during the vesting period.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;were </font><font style="font-family:Arial;font-size:10pt;">$9,143,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$1,654,000</font><font style="font-family:Arial;font-size:10pt;">, respectively, and for the three-month period ended </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">&#32;were </font><font style="font-family:Arial;font-size:10pt;">$8,026,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$2,639,000</font><font style="font-family:Arial;font-size:10pt;">, respectively.  The total stock-based compensation expense and the related income tax benefit recognized for the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;were </font><font style="font-family:Arial;font-size:10pt;">$31,339,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$5,608,000</font><font style="font-family:Arial;font-size:10pt;">, respectively, and for the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">&#32;were </font><font style="font-family:Arial;font-size:10pt;">$23,355,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">$7,661,000</font><font style="font-family:Arial;font-size:10pt;">, respectively.  </font><font style="font-family:Arial;font-size:10pt;">No</font><font style="font-family:Arial;font-size:10pt;">&#32;compensation expense was capitalized as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;or </font><font style="font-family:Arial;font-size:10pt;">December&#160;31, 2017</font><font style="font-family:Arial;font-size:10pt;">.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table presents the stock-based compensation expense by caption for each period presented on the Consolidated Statements of Operations (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:38%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cost of revenue</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">544</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">520</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,898</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,404</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Research, development, and engineering</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">3,197</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,765</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">11,166</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,090</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Selling, general, and administrative</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,402</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,741</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">18,275</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,861</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">9,143</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,026</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">31,339</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">23,355</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div><a name="s30E624CF83E75FC2B6EA4CF98C6A858C"></a></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 11: Stock Repurchase Program</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">In April 2017, the Company's Board of Directors authorized the repurchase of </font><font style="font-family:Arial;font-size:10pt;">$100,000,000</font><font style="font-family:Arial;font-size:10pt;">&#32;of the Company's common stock.  As of September 30, 2018, the Company had repurchased </font><font style="font-family:Arial;font-size:10pt;">1,744,000</font><font style="font-family:Arial;font-size:10pt;">&#32;shares at a cost of </font><font style="font-family:Arial;font-size:10pt;">$100,000,000</font><font style="font-family:Arial;font-size:10pt;">&#32;under this program, including </font><font style="font-family:Arial;font-size:10pt;">803,000</font><font style="font-family:Arial;font-size:10pt;">&#32;shares at a cost of </font><font style="font-family:Arial;font-size:10pt;">$45,200,000</font><font style="font-family:Arial;font-size:10pt;">&#32;in the three-month period ended April 1, 2018. Stock repurchases under this April 2017 program were completed in the three-month period ended April 1, 2018.  In February 2018, the Company's Board of Directors authorized the repurchase of an additional </font><font style="font-family:Arial;font-size:10pt;">$150,000,000</font><font style="font-family:Arial;font-size:10pt;">&#32;of the Company's common stock.  As of September 30, 2018,  the Company had repurchased </font><font style="font-family:Arial;font-size:10pt;">1,947,000</font><font style="font-family:Arial;font-size:10pt;">&#32;shares at a cost of </font><font style="font-family:Arial;font-size:10pt;">$97,062,000</font><font style="font-family:Arial;font-size:10pt;">&#32;under this program, leaving a remaining authorized balance of </font><font style="font-family:Arial;font-size:10pt;">$52,938,000</font><font style="font-family:Arial;font-size:10pt;">.  Total stock repurchases in the nine-month period ended September 30, 2018 amounted to </font><font style="font-family:Arial;font-size:10pt;">$142,262,000</font><font style="font-family:Arial;font-size:10pt;">. The Company may repurchase shares under this program in future periods depending upon a variety of factors, including, among other things, the impact of dilution from employee stock options, stock price, share availability, and cash requirements.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">22</font></div></div><hr style="page-break-after:always"><div><a name="sD2F709AA665C5C5D996C6ACF537CAB38"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED) </font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 12: Taxes</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">A reconciliation of the United States federal statutory corporate tax rate to the Company&#8217;s income tax expense, or effective tax rate, was as follows:</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:39%;"></td><td style="width:14%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:14%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months&#160;Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income tax provision at federal statutory corporate tax rate</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">35</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">35</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">State income taxes, net of federal benefit</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign tax rate differential</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(7</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(18</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(7</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(18</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Tax credit</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Discrete tax benefit related to Tax Act 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(9</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(4</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Discrete tax benefit related to stock option exercises</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(4</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(7</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(5</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(13</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other discrete tax events</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(2</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(2</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income tax provision</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">On December 22, 2017, the United States Congress passed and the President signed into law the Tax Cuts and Jobs Act of 2017 (Tax Act).  The Tax Act included a decrease in the U.S. federal statutory corporate tax rate from </font><font style="font-family:Arial;font-size:10pt;">35%</font><font style="font-family:Arial;font-size:10pt;">&#32;to </font><font style="font-family:Arial;font-size:10pt;">21%</font><font style="font-family:Arial;font-size:10pt;">, a one-time transition tax on unrepatriated foreign earnings, and limits on certain deductions.  The Securities and Exchange Commission (SEC) released Staff Accounting Bulletin (SAB) No. 118 to provide guidance to companies on how to implement the accounting and disclosure changes as a result of the Tax Act.  The Company made what it considered to be a reasonable estimate of the impact of the Tax Act in its financial statements for the year ended December 31, 2017.  In the third quarter of 2018, the Company revised its estimate of the impact of the Tax Act based on additional regulatory guidance.  The effective tax rate, as a result, was reduced by </font><font style="font-family:Arial;font-size:10pt;color:#000000;">9</font><font style="font-family:Arial;font-size:10pt;">&#32;percentage points and </font><font style="font-family:Arial;font-size:10pt;color:#000000;">4</font><font style="font-family:Arial;font-size:10pt;">&#32;percentage points for the three-month and nine-month period ended September 30, 2018, respectively.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">This significant estimate is highly judgmental and changes to this estimate could result in material charges or credits in future reporting periods.  The Company will continue to review the guidance at the Federal and State levels through the end of 2018 and additional revisions to the estimates of the impact of the Tax Act may be required in the fourth quarter of 2018 as regulatory guidance continues to develop, specifically at the individual State level.  The Tax Act subjects the Company to current tax on Global Intangible Low-Taxed Income (GILTI) earned by certain foreign subsidiaries.&#160; The Company has made an accounting policy election to provide for the tax expense related to GILTI in the year the tax is incurred rather than recognize deferred taxes for these temporary differences.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The majority of income earned outside of the United States is permanently reinvested to provide funds for international expansion.  The Company is tax resident in numerous jurisdictions around the world and has identified its major jurisdictions as the United States, Ireland, and China.  The statutory tax rate is </font><font style="font-family:Arial;font-size:10pt;">12.5%</font><font style="font-family:Arial;font-size:10pt;">&#32;in Ireland and </font><font style="font-family:Arial;font-size:10pt;">25%</font><font style="font-family:Arial;font-size:10pt;">&#32;in China, compared to the U.S. federal statutory corporate tax rate of </font><font style="font-family:Arial;font-size:10pt;">21%</font><font style="font-family:Arial;font-size:10pt;">.  International rights to certain of the Company's intellectual property are held by a subsidiary whose legal jurisdiction does not tax this income, resulting in a foreign effective tax rate that is lower than the above mentioned statutory rates, although the reduced taxes overseas have been partially offset by changes in U.S. tax law.  These differences resulted in a decrease in the effective tax rate by </font><font style="font-family:Arial;font-size:10pt;">7</font><font style="font-family:Arial;font-size:10pt;">&#32;percentage points</font><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#32;</font><font style="font-family:Arial;font-size:10pt;">for the three-month and </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, and a decrease in the effective tax rate by </font><font style="font-family:Arial;font-size:10pt;">18</font><font style="font-family:Arial;font-size:10pt;">&#32;percentage points for the three-month and nine-month periods ended </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The excess tax benefit arising from the difference between the deduction for tax purposes and the compensation cost recognized for financial reporting purposes from stock option exercises resulted in a decrease of the effective tax rate by </font><font style="font-family:Arial;font-size:10pt;">4</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">7</font><font style="font-family:Arial;font-size:10pt;">&#32;percentage points for the three-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">, respectively, and a decrease of the effective tax rate by </font><font style="font-family:Arial;font-size:10pt;">5</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">13</font><font style="font-family:Arial;font-size:10pt;">&#32;percentage points for the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">, respectively.  Certain reserves for income taxes and other provision-to-return adjustments resulted in a decrease of the effective tax rate by </font><font style="font-family:Arial;font-size:10pt;color:#000000;">2</font><font style="font-family:Arial;font-size:10pt;">&#32;percentage points for both the three-month periods ended September 30, 2018 and October 1, 2017 and a decrease of the effective tax rate by </font><font style="font-family:Arial;font-size:10pt;color:#000000;">1</font><font style="font-family:Arial;font-size:10pt;">&#32;percentage point for both the nine-month periods ended September 30, 2018 and October 1, 2017.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">23</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">COGNEX CORPORATION </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED) </font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">On January 1, 2018, the Company adopted Accounting Standard Update (ASU) 2016-16, "Income Taxes - Intra-Entity Transfers of Assets Other than Inventory."  This Update requires the recognition of deferred income taxes for an intra-entity transfer of an asset other than inventory.  As a result of this ASU, the Company recorded </font><font style="font-family:Arial;font-size:10pt;">$5,961,000</font><font style="font-family:Arial;font-size:10pt;">&#32;through a cumulative-effect adjustment directly to retained earnings at the beginning of fiscal year 2018.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">During the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, the Company recorded a </font><font style="font-family:Arial;font-size:10pt;">$204,000</font><font style="font-family:Arial;font-size:10pt;">&#32;increase in reserves for income taxes, net of deferred tax benefit.  Estimated interest and penalties included in these amounts totaled </font><font style="font-family:Arial;font-size:10pt;">$33,000</font><font style="font-family:Arial;font-size:10pt;">&#32;for the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s reserve for income taxes, including gross interest and penalties, was </font><font style="font-family:Arial;font-size:10pt;">$7,674,000</font><font style="font-family:Arial;font-size:10pt;">&#32;as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, which included </font><font style="font-family:Arial;font-size:10pt;">$6,646,000</font><font style="font-family:Arial;font-size:10pt;">&#32;classified as a non-current liability and </font><font style="font-family:Arial;font-size:10pt;">$1,028,000</font><font style="font-family:Arial;font-size:10pt;">&#32;recorded as a reduction to non-current deferred tax assets.  The amount of gross interest and penalties included in these balances was </font><font style="font-family:Arial;font-size:10pt;">$773,000</font><font style="font-family:Arial;font-size:10pt;">.  If the Company&#8217;s tax positions were sustained or the statutes of limitations related to certain positions expired, these reserves would be released and income tax expense would be reduced in a future period.  As a result of the expiration of certain statutes of limitations, there is a potential that a portion of these reserves could be released, which would decrease income tax expense by approximately </font><font style="font-family:Arial;font-size:10pt;">$1,200,000</font><font style="font-family:Arial;font-size:10pt;">&#32;to </font><font style="font-family:Arial;font-size:10pt;">$1,300,000</font><font style="font-family:Arial;font-size:10pt;">&#32;over the next twelve months.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company has defined its major tax jurisdictions as the United States, Ireland, and China, and within the United States, Massachusetts.  Within the United States, the tax years </font><font style="font-family:Arial;font-size:10pt;">2015 through 2017</font><font style="font-family:Arial;font-size:10pt;">&#32;remain open to examination by the Internal Revenue Service and various state tax authorities.  The tax years </font><font style="font-family:Arial;font-size:10pt;">2014 through 2017</font><font style="font-family:Arial;font-size:10pt;">&#32;remain open to examination by various taxing authorities in other jurisdictions in which the Company operates. </font></div><div><a name="s1073AD567DAC5718890626E2BB64DC1E"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 13: Weighted-Average Shares</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Weighted-average shares were calculated as follows (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:39%;"></td><td style="width:14%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:14%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Basic weighted-average common shares outstanding</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">172,189</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">173,234</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">172,613</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">173,052</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Effect of dilutive stock options</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,056</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,120</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,408</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,072</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Weighted-average common and common-equivalent shares outstanding</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">177,245</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">179,354</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">178,021</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">179,124</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Stock options to purchase </font><font style="font-family:Arial;font-size:10pt;">2,796,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">2,353,000</font><font style="font-family:Arial;font-size:10pt;">&#32;shares of common stock, on a weighted-average basis, were outstanding during the three-month and nine-month periods ended September 30, 2018, respectively, and </font><font style="font-family:Arial;font-size:10pt;">466,000</font><font style="font-family:Arial;font-size:10pt;">&#32;and </font><font style="font-family:Arial;font-size:10pt;">3,108,000</font><font style="font-family:Arial;font-size:10pt;">&#32;for the same periods in 2017, but were not included in the calculation of dilutive net income per share because they were anti-dilutive.</font></div><div><a name="sF2E42F99E129572A90DD35878322AC20"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">NOTE 14: Subsequent Events</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">On October 29, 2018, the Company&#8217;s Board of Directors declared a cash dividend of </font><font style="font-family:Arial;font-size:10pt;">$0.050</font><font style="font-family:Arial;font-size:10pt;">&#32;per share.  The dividend is payable </font><font style="font-family:Arial;font-size:10pt;">November&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;to all shareholders of record as of the close of business on </font><font style="font-family:Arial;font-size:10pt;">November&#160;16, 2018</font><font style="font-family:Arial;font-size:10pt;">. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">In addition, on October 29, 2018, the Company's Board of Directors authorized the repurchase of an additional </font><font style="font-family:Arial;font-size:10pt;">$200,000,000</font><font style="font-family:Arial;font-size:10pt;">&#32;of the Company's common stock.  This new authorization will commence once the Company completes the February 2018 program.                                      </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">24</font></div></div><hr style="page-break-after:always"><div><a name="s82E3A122ED7A5DB780E364305E4464DD"></a></div><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">ITEM&#160;2: MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Forward-Looking Statements</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Certain statements made in this report, as well as oral statements made by the Company from time to time, constitute forward-looking statements within the meaning of Section&#160;27A of the Securities Act of 1933, as amended, and Section&#160;21E of the Securities Exchange Act of 1934, as amended. Readers can identify these forward-looking statements by our use of the words &#8220;expects,&#8221; &#8220;anticipates,&#8221; &#8220;estimates,&#8221; &#8220;believes,&#8221; &#8220;projects,&#8221; &#8220;intends,&#8221; &#8220;plans,&#8221; &#8220;will,&#8221; &#8220;may,&#8221; &#8220;shall,&#8221; &#8220;could,&#8221; &#8220;should,&#8221; and similar words and other statements of a similar sense.  These statements are based upon our current estimates and expectations as to prospective events and circumstances, which may or may not be in our control and as to which there can be no firm assurances given.  These forward-looking statements, which include statements regarding business and market trends, future financial performance, customer order rates and timing of related revenue, expected areas of growth, emerging markets, future product mix, research and development activities, investments, strategic plans 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)&#160;the loss of a large customer; (2)&#160;current and future conditions in the global economy, including the imposition of tariffs; (3)&#160;the reliance on revenue from the consumer electronics or automotive industries; (4)&#160;the inability to penetrate new markets; (5)&#160;the inability to achieve significant international revenue; (6)&#160;fluctuations in foreign currency exchange rates and the use of derivative instruments; (7)&#160;information security breaches or business system disruptions; (8)&#160;the inability to attract and retain skilled employees; (9) the failure to effectively manage our growth; (10)&#160;the reliance upon key suppliers to manufacture and deliver critical components for our products; (11)&#160;the failure to effectively manage product transitions or accurately forecast customer demand; (12)&#160;the inability to design and manufacture high-quality products; (13)&#160;the technological obsolescence of current products and the inability to develop new products; (14)&#160;the failure to properly manage the distribution of products and services; (15)&#160;the inability to protect our proprietary technology and intellectual property; (16)&#160;our involvement in time-consuming and costly litigation; (17)&#160;the impact of competitive pressures; (18)&#160;the challenges in integrating and achieving expected results from acquired businesses; (19)&#160;potential impairment charges with respect to our investments or for acquired intangible assets or goodwill; and (20)&#160;exposure to additional tax liabilities.  The foregoing list should not be construed as exhaustive and we encourage readers to refer to the detailed discussion of risk factors included in Part I - Item&#160;1A of the Company's Annual Report on Form 10-K for the fiscal year ended December 31, 2017.  The Company cautions readers not to place undue reliance upon any such forward-looking statements, which speak only as of the date made. The Company disclaims any obligation to subsequently revise forward-looking statements to reflect the occurrence of anticipated or unanticipated events or circumstances after the date such statements are made.</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Executive Overview</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cognex Corporation is a leading worldwide provider of machine vision products that capture and analyze visual information in order to automate tasks, primarily in manufacturing processes, where vision is required.  In addition to product revenue derived from the sale of machine vision products, the Company also generates revenue by providing maintenance and support, consulting, and training services to its customers; however, service revenue accounted for less than 10% of total revenue for all periods presented.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s customers are predominantly in the factory automation market.  Factory automation customers purchase Cognex products and incorporate them into their manufacturing processes.  Customers in the consumer electronics and automotive industries contribute the largest percentage to the Company's factory automation revenue.  Most manufacturers can achieve better quality and manufacturing efficiency by using machine vision, and therefore, this market also includes a broad base of customers across a variety of other industries, including consumer products, food and beverage, medical devices, and pharmaceuticals.  Factory automation customers also purchase Cognex products for use outside of the manufacturing process, such as using ID products in logistics automation for package sorting and distribution.  A small percentage of the Company&#8217;s customers are in the semiconductor and electronics capital equipment market.  These customers purchase Cognex products and integrate them into the automation equipment that they manufacture and then sell to their customers to either make semiconductor chips or assemble printed circuit boards. </font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">On January 1, 2018, the Company adopted Accounting Standards Codification (ASC) 606, "Revenue from Contracts with Customers," using the full retrospective method to present all periods reported on a consistent basis.  Accordingly, prior period revenue, cost of revenue, and gross profit have been restated to apply the provisions of this ASC.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue for the third quarter of 2018 totaled $232,221,000, representing a decrease of 13% from the revenue reported for the third quarter of 2017, which was the highest quarterly revenue recorded by the Company.  The revenue decline </font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">25</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">was driven primarily by lower order levels from a few large customers in the consumer electronics industry and was partially offset by growth in the logistics industry.  The gross margin improved to 75% of revenue in the third quarter of 2018 from 74% of revenue in the third quarter of 2017, due primarily to a lower percentage of revenue related to application-specific customer solutions.  Operating expenses in the third quarter of 2018 increased by 10% over the third quarter of 2017 due principally to the impact of headcount additions to support our future growth plans.  As a result of the lower revenue and continued headcount investment, operating income decreased to 34% of revenue in the third quarter of 2018 from 42% of revenue in the third quarter of 2017.  A decrease in tax expense primarily from revised estimates of the impact of the Tax Cuts and Jobs Act of 2017 (the Tax Act) resulted in lower income tax expense than the prior year.  Net income decreased to 35% of revenue in the third quarter of 2018 from 39% of revenue in the third quarter of 2017.  Net income per diluted share was $0.45 in the third quarter of 2018 compared to $0.57 in the third quarter of 2017.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Results of Operations</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As foreign currency exchange rates are a factor in understanding period-to-period comparisons, we believe the presentation of results on a constant-currency basis in addition to reported results helps improve investors&#8217; ability to understand our operating results and evaluate our performance in comparison to prior periods.  We also use results on a constant-currency basis as one measure to evaluate our performance.  Constant-currency information compares results between periods as if exchange rates had remained constant period-over-period.  We generally refer to such amounts calculated on a constant-currency basis as excluding the impact of foreign currency exchange rate changes.  Results on a constant-currency basis are not in accordance with accounting principles generally accepted in the United States of America (U.S. GAAP) and should be considered in addition to, and not as a substitute for, results prepared in accordance with U.S. GAAP.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Revenue</font></div><div style="line-height:120%;padding-bottom:10px;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue decreased by $33,821,000, or 13%, for the three-month period and increased by $29,891,000, or 5%, for the nine-month period.  Revenue for both periods in 2018 was impacted by lower sales in the consumer electronics industry primarily due to significantly lower revenue from large customers in OLED (organic light-emitting diode) display and smartphone manufacturing following a high level of investment from these customers in 2017.   Excluding sales to customers in the consumer electronics industry, revenue increased by approximately 6% for the three-month period and increased by approximately 23% for the nine-month period.  Changes in foreign currency exchange rates did not have a material impact on revenue for the three-month period, but accounted for approximately 3% of the revenue increase for the nine-month period, primarily related to the translation of Euro denominated and Chinese Yuan denominated revenue to U.S. Dollars.  </font></div><div style="line-height:120%;padding-bottom:10px;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue from customers based in the Americas increased by 7% for the three-month period and by 22% for the nine-month period driven by strong sales in the logistics industry.  Revenue from customers based in Europe decreased by 21% for the three-month period and by 4% for the nine-month period, and revenue from customers based in Asia decreased by 11% for the three-month period and increased by 4% for the nine-month period.  Constant-currency revenue from customers based in Europe decreased by 9% for the nine-month period, and constant-currency revenue from customers based in Asia was relatively flat for the nine-month period.  Revenue for both Europe and Asia was negatively impacted by the lower sales in the consumer electronics industry noted above.</font></div><div style="line-height:120%;padding-bottom:10px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As of the date of this report, we expect revenue for the fourth quarter of 2018 to decrease sequentially from the third quarter of 2018 due to lower sales in the consumer electronics industry, as well as anticipated lower demand from customers based in China. </font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Gross Margin</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross margin as a percentage of revenue was 75% for both the three-month and nine-month periods in 2018, compared to 74% and 76% for same periods in 2017.  The increase for the three-month period was due primarily to a lower percentage of revenue related to application-specific customer solutions.  These solutions typically have lower gross margins due to the application configuration and deployment services included as part of the solution, as well as on-site support services provided after the solution is deployed.&#160; In addition, these solutions are often provided to large customers that may receive favorable pricing.  Although there was also a lower percentage of revenue related to application-specific customer solutions for the nine-month period, this favorable impact was offset by unfavorable product mix.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company's gross margin percentage has ranged in the mid 70s for the past several years.  As of the date of this report, we expect the gross margin percentage for the fourth quarter of 2018 to continue to be within this historical range, but lower than the third quarter of 2018.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">26</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Operating Expenses</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Research, development, and engineering (RD&amp;E) expenses increased by $3,622,000, or 14%, for the three-month period and increased by $15,439,000, or 21%, for the nine-month period as detailed in the table below (in thousands).</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:69%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-month period</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-month period</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">RD&amp;E expense in 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">26,078</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">72,225</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Personnel-related costs</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,534</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,127</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Stock-based compensation expense</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">444</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,989</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Prototyping materials</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(129</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,343</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign currency exchange rate changes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(102</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,346</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">875</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,634</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">RD&amp;E expenses in 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">29,700</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">87,664</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">RD&amp;E expenses increased due to higher personnel-related costs resulting primarily from headcount additions to support new product initiatives.  In addition, stock-based compensation expense was higher than the prior year due to a higher valuation of stock options granted, as well as a decrease in the estimated forfeiture rate during the year 2018.  The increase for the nine-month period was also due to higher spending on prototyping materials to support new product initiatives and changes in foreign currency exchange rates, as expenses denominated in foreign currencies were translated to U.S. Dollars. </font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">RD&amp;E expenses as a percentage of revenue were 13% and 14% for the three-month and nine-month periods in 2018, respectively, compared to 10% and 12% for the same periods in 2017.  We believe that a continued commitment to RD&amp;E activities is essential in order to maintain or achieve product leadership with our existing products and to provide innovative new product offerings, as well as to provide engineering support for large customers.  In addition, we consider our ability to accelerate time to market for new products to be critical to our revenue growth.  Therefore, we expect to continue to make significant RD&amp;E investments in the future, and we target our RD&amp;E spending to be between 10% and 15% of revenue on an annual basis.  This quarterly percentage is impacted by revenue levels and investing cycles. </font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Selling, General, and Administrative Expenses</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Selling, general, and administrative (SG&amp;A) expenses increased by $4,763,000, or 8%, for the three-month period and increased by $36,173,000, or 23%, for the nine-month period as detailed in the table below (in thousands). </font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:71%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-month period</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-month period</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">SG&amp;A expenses in 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">61,054</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">160,093</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Personnel-related costs</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,631</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">28,040</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Stock-based compensation expense</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">675</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,272</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign currency exchange rate changes</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(190</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,552</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Depreciation expense</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,049</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,932</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Incentive compensation plans</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(3,709</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(6,053</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1,693</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,430</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">SG&amp;A expenses in 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#bfe4ff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#bfe4ff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">65,817</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#bfe4ff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#bfe4ff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#bfe4ff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#bfe4ff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">196,266</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#bfe4ff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">SG&amp;A expenses increased due to higher personnel-related costs resulting primarily from headcount additions, principally sales personnel.   In addition to salaries and fringe benefits, these personnel-related costs included sales commissions and travel expenses related to the additional headcount.  Stock-based compensation expense was higher than the prior year due to a higher valuation of stock options granted, as well as a decrease in the estimated forfeiture rate during 2018.  Depreciation expense increased from the prior year due primarily to information technology investments in infrastructure, security, and business applications, including a new Enterprise Resource Planning (ERP) system that was placed into service in the third quarter of 2018.  The increase for the nine-month period was also due to changes in foreign currency exchange rates, as expenses denominated in foreign currencies were translated to U.S. Dollars.  Offsetting these increases were lower expenses related to incentive compensation plans, including </font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">27</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">company bonuses and sales commissions, resulting from lower levels of achievement on performance plans that were set at the beginning of the year.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Non-operating Income (Expense)</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company recorded foreign currency losses of $379,000 and $708,000 for the three-month and nine-month periods in 2018, respectively, compared to foreign currency losses of $127,000 and $574,000 for the same periods in 2017.  Foreign currency gains and losses result primarily from the revaluation and settlement of accounts receivable, accounts payable, and intercompany balances that are reported in one currency and collected in another. </font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Investment income increased by $1,462,000, or 59%, for the three-month period and increased by $4,111,000, or 62%, for the nine-month period.  The increase was due primarily to higher yields on the Company's portfolio of debt securities, as well as additional funds available for investment.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company recorded other expense of $129,000 and $98,000 for the three-month and nine-month periods in 2018, respectively, compared to other expense of $445,000 and $344,000 for the same periods in 2017.  Other income (expense) includes fair value adjustments of contingent consideration liabilities arising from business acquisitions, as well as rental income, net of associated expenses, from leasing space in buildings adjacent to the Company&#8217;s corporate headquarters.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Income Tax Expense</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s effective tax rate was an expense of 1% and 6% of pre-tax income for the three-month and nine-month periods in 2018, respectively, compared to an expense of 9% and 4% of pre-tax income for the same periods in 2017.</font></div><div style="line-height:120%;padding-bottom:10px;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">On December 22, 2017, the Tax Cuts and Jobs Act of 2017 (Tax Act) was signed into law. The Company made what it considered to be a reasonable estimate of the impact of the Tax Act in its financial statements for the year ended December 31, 2017. In the third quarter of 2018, the Company recorded a decrease in tax expense of $7,699,000 from revised estimates of the impact of the Tax Act based on additional regulatory guidance. These revised estimates included the true-up of a one-time transition tax on unrepatriated foreign earnings and the write-down of deferred tax assets related to stock-based compensation expense.  Additional revisions to the estimates of the impact of the Tax Act may be required in the fourth quarter of 2018 as regulatory guidance continues to develop.</font></div><div style="line-height:120%;padding-bottom:10px;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The effective tax rate included a decrease in tax expense of $2,811,000 and $8,400,000 for the three-month and nine-month periods in 2018, respectively, and $8,620,000 and $27,574,000 for the same periods in 2017 from the excess tax benefit arising from the difference between the deduction for tax purposes and the compensation cost recognized for financial reporting purposes from stock option exercises.  The Company cannot predict the level of stock option exercises by employees in future periods.  </font></div><div style="line-height:120%;padding-bottom:10px;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">In addition, the effective tax rate included a decrease in tax expense of $1,657,000 for both the three-month and nine-month periods in 2018 and a decrease in tax expense of $1,765,000 and $1,908,000 for same periods in 2017 from other discrete tax events, consisting primarily of the final true-up of the prior year's tax accrual upon filing the actual tax returns and the expiration of the statutes of limitations for certain reserves for income tax uncertainties.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Excluding the impact of these discrete tax events, the Company&#8217;s effective tax rate was 16% for both the three-month and nine-month periods in 2018, compared to 18% for the same periods in 2017.  This decrease in the effective tax rate was primarily due to the impact of the Tax Act, which included a decrease in the U.S. federal statutory corporate tax rate from 35% to 21%.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The majority of income earned outside of the United States is indefinitely reinvested to provide funds for international expansion.  The Company is tax resident in numerous jurisdictions around the world and has identified its major tax jurisdictions as the United States, Ireland, and China.  The statutory tax rate is 12.5% in Ireland and 25% in China.  International rights to certain of the Company&#8217;s intellectual property are held by a subsidiary whose legal jurisdiction does not tax this income, resulting in a foreign effective tax rate lower than the above mentioned statutory rates.  The Company has not yet determined how the Tax Act will impact its financial statement assertion related to indefinite reinvestment in future years.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">28</font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Liquidity and Capital Resources</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company has historically been able to generate positive cash flow from operations, which has funded its operating activities and other cash requirements and has resulted in an accumulated cash and investment balance of $809,316,000 as of September 30, 2018.  The Company has established guidelines relative to credit ratings, diversification, and maturities of its investments that maintain liquidity.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s cash requirements during the nine months ended September 30, 2018 were met with positive cash flows from operations, investment maturities, and the proceeds from stock option exercises.  Cash requirements consisted of operating activities, investment purchases, the repurchase of common stock, the payment of dividends, and capital expenditures. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Capital expenditures in the nine-month period ended September 30, 2018 totaled $27,356,000 and consisted primarily of computer hardware and software, manufacturing test equipment related to new product introductions, and improvements made to the Company's headquarters building in Natick, Massachusetts and distribution center in Cork, Ireland.  Cumulative capital expenditures since the second quarter of 2017 related to application development activities for a new Enterprise Resource Planning (ERP) system totaled approximately $10,000,000.  This capital asset was placed into service in the third quarter of 2018 and is being depreciated over a ten year estimated useful life.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">In April 2017, the Company's Board of Directors authorized the repurchase of $100,000,000 of the Company's common stock.  As of September 30, 2018, the Company had repurchased 1,744,000 shares at a cost of $100,000,000 under this program, including 803,000 shares at a cost of $45,200,000 in the first quarter of 2018.  Stock repurchases under this April 2017 program were completed in the first quarter of 2018.  In February 2018, the Company's Board of Directors authorized the repurchase of an additional $150,000,000 of the Company's common stock.  Purchases under this February 2018 program commenced during the first quarter of 2018.  As of September 30, 2018, the Company had repurchased 1,947,000 shares at a cost of $97,062,000 under this program, leaving a remaining authorized balance of $52,938,000.  Total stock repurchases in the nine-month period ended September 30, 2018 amounted to $142,262,000.  The Company may repurchase shares under this program in future periods depending on a variety of factors, including, among other things, the impact of dilution from employee stock options, stock price, share availability, and cash requirements.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s Board of Directors declared and paid a cash dividend of $0.0450 per share in the first, second, and third quarters of 2018, amounting to $23,283,000 for the nine-month period ended September 30, 2018.  Future dividends will be declared at the discretion of the Company&#8217;s Board of Directors and will depend upon such factors as the Board deems relevant including, among other things, the Company&#8217;s ability to generate positive cash flows from operations.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s business strategy includes selective expansion into new machine vision markets and applications through the acquisition of businesses and technologies.  Certain of the Company's business acquisitions have contractual obligations for deferred cash payments, contingent cash payments tied to performance, and special incentive cash payments tied to employment, none of which are material individually or in the aggregate to the Company's cash flows.</font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company believes that its existing cash and investment balances, together with cash flow from operations, will be sufficient to meet its operating, investing, and financing activities for the next twelve months.  As of September 30, 2018, the Company had $809,316,000 in cash and investments.  In addition, Cognex has no long-term debt and does not anticipate needing debt financing in the near future.  We believe that our strong cash position has put us in a relatively good position with respect to our longer-term liquidity needs.</font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">New Pronouncements</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Refer to Part I - Note 2 within this Form 10-Q, for a full description of recently issued accounting pronouncements including the expected dates of adoption and the expected impact on the financial position and results of operations of the Company. </font></div><div><a name="s6AD203DE16605214BC24399CA22F2AFB"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">ITEM&#160;3: QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">There have been no material changes to the Company&#8217;s exposures to market risk since </font><font style="font-family:Arial;font-size:10pt;">December&#160;31, 2017</font><font style="font-family:Arial;font-size:10pt;">.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">29</font></div></div><hr style="page-break-after:always"><div><a name="s5AFA1363F1DF53F196063949DD56CCCB"></a></div><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">ITEM&#160;4: CONTROLS AND PROCEDURES</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As required by Rules 13a-15 and 15d-15 of the Securities Exchange Act of 1934, the Company has evaluated, with the participation of management, including the Chief Executive Officer and the Chief Financial Officer, the effectiveness of its disclosure controls and procedures (as defined in such rules) as of the end of the period covered by this report. Based on such evaluation, the Chief Executive Officer and Chief Financial Officer concluded that such disclosure controls and procedures were effective as of that date.  From time to time, the Company reviews its disclosure controls and procedures, and may from time to time make changes aimed at enhancing their effectiveness and to ensure that the Company&#8217;s systems evolve with its business. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Changes in Internal Control Over Financial Reporting</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">During the third quarter of 2018, the Company implemented a new Enterprise Resource Planning (ERP) system.  As a result of this implementation, the Company modified certain existing internal controls as well as implemented new controls and procedures related to the new ERP system.  The Company will continue to evaluate the design and operating effectiveness of its internal controls during subsequent periods.  Other than the ERP implementation, there have been no significant changes in the Company's internal control over financial reporting that occurred during the quarter ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;that has materially affected, or is reasonably likely to materially affect, the Company&#8217;s internal control over financial reporting.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">30</font></div></div><hr style="page-break-after:always"><div><a name="sFDD67172E8A75B2BAADEC05631763A7B"></a></div><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">PART II: OTHER INFORMATION</font></div><div><a name="s93A3627F36D955458EED3E4C69F92783"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">ITEM&#160;1. LEGAL PROCEEDINGS</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Various claims and legal proceedings generally incidental to the normal course of business are pending or threatened on behalf of or against the Company.  While we cannot predict the outcome of these matters, we believe that any liability arising from them will not have a material adverse effect on our financial position, liquidity, or results of operations.</font></div><div><a name="s50578102CEF856968BBAF0D7C3A79B53"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">ITEM&#160;1A. RISK FACTORS</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">For a list of factors that could affect the Company&#8217;s business, results of operations, and financial condition, see the risk factors discussion provided in Part I&#8212;Item&#160;1A of the Company&#8217;s Annual Report on Form 10-K for the fiscal year ended </font><font style="font-family:Arial;font-size:10pt;">December&#160;31, 2017</font><font style="font-family:Arial;font-size:10pt;">.</font></div><div><a name="s4B5FCD11A4A75DF68749722D752747B8"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">ITEM&#160;2. UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table sets forth information with respect to purchases by the Company of shares of its common stock during the three-month period ended September 30, 2018:</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="14"></td></tr><tr><td style="width:38%;"></td><td style="width:12%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:17%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:13%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Number</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">of Shares</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Purchased</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Average</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Price&#160;Paid</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">per Share</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Total&#160;Number&#160;of</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Shares</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Purchased as</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Part of Publicly</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Announced</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Plans or</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Programs (1)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Approximate</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Dollar Value</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">of Shares that</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">May Yet Be</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Purchased</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Under the</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Plans or</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Programs</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">July 2 - July 29, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">73,892,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">July 30 - August 26, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">141,750</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">52.59</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">141,750</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">66,437,000</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">August 27 - September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">252,000</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">53.57</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">252,000</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">52,938,000</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Total</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">393,750</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">53.22</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">393,750</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">52,938,000</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td></tr></table></div></div><div style="line-height:120%;text-align:justify;padding-left:48px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1) In February 2018, the Company's Board of Directors authorized the repurchase of $150,000,000 of the Company's common stock. Purchases under this program commenced in February 2018.</font></div><div style="line-height:120%;text-align:justify;padding-left:48px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">In October 2018, the Company's Board of Directors authorized the repurchase of an additional $200,000,000 of the Company's common stock.  This new authorization will commence once the Company completes the February 2018 program, with repurchases subject to market conditions and other relevant factors. </font></div><div><a name="s1CD998E2B0555212AFA8BAF705F34546"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">ITEM&#160;3. DEFAULTS UPON SENIOR SECURITIES</font></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">None.</font></div><div><a name="s55B39FF0982257D3B651BE376D8120E4"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">ITEM&#160;4. MINE SAFETY DISCLOSURES</font></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Not applicable.</font></div><div><a name="sD7021E8D8C9B5595900DE30DFB15316A"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">ITEM&#160;5. OTHER INFORMATION</font></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">None.</font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">31</font></div></div><hr style="page-break-after:always"><div><a name="s80DBF714EE78532194C9D08155DD077F"></a></div><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;-sec-extract:summary;font-size:10pt;"><font style="font-family:Arial;font-size:6pt;">&#160;</font><font style="font-family:Arial;font-size:10pt;font-weight:bold;">ITEM&#160;6. EXHIBITS</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"></td></tr><tr><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:88%;"></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;font-weight:bold;text-decoration:underline;">Exhibit Number</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">31.1</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="text-decoration:underline;color:#000000;-sec-extract:exhibit;" href="a9302018-10qxexhibit311.htm"><font style="font-family:Arial;font-size:10pt;color:#000000;">Certification of Chief Executive Officer pursuant to Rule 13a-14(a)/15d-14(a) under the Securities Exchange Act of 1934*</font></a></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">31.2</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="text-decoration:underline;color:#000000;-sec-extract:exhibit;" href="a9302018-10qxexhibit312.htm"><font style="font-family:Arial;font-size:10pt;color:#000000;">Certification of Chief Financial Officer pursuant to Rule 13a-14(a)/15d-14(a) under the Securities Exchange Act of 1934*</font></a></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32.1</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="text-decoration:underline;color:#000000;-sec-extract:exhibit;" href="a9302018-10qxexhibit321.htm"><font style="font-family:Arial;font-size:10pt;color:#000000;">Certification of Chief Executive Officer pursuant to 18 U.S.C. 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002**</font></a></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32.2</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><a style="text-decoration:underline;color:#000000;-sec-extract:exhibit;" href="a9302018-10qxexhibit322.htm"><font style="font-family:Arial;font-size:10pt;color:#000000;">Certification of Chief Financial Officer pursuant to 18 U.S.C. 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002**</font></a></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">101</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">xBRL (Extensible Business Reporting Language)</font></div></td></tr><tr><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following materials from Cognex Corporation&#8217;s Quarterly Report on Form 10-Q for the period ended September 30, 2018, formatted in xBRL: (i) Consolidated Statements of Operations for the three-month and nine-month periods ended September 30, 2018 and October 1, 2017; (ii) Consolidated Statements of Comprehensive Income for the three-month and nine-month periods ended September 30, 2018 and October 1, 2017; (iii) Consolidated Balance Sheets as of September 30, 2018 and December 31, 2017; (iv) Consolidated Statements of Cash Flows for the nine-month periods ended September 30, 2018 and October 1, 2017; (v) Consolidated Statement of Shareholders&#8217; Equity for the nine-month period ended September 30, 2018; and (vi) Notes to Consolidated Financial Statements.</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">*</font></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Filed herewith</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">**</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Furnished herewith</font></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">32</font></div></div><hr style="page-break-after:always"><div><a name="s658B5738DA3D54A99B8803F464F776FA"></a></div><div><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">SIGNATURES</font></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.</font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;">&#160;</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:6%;"></td><td style="width:36%;"></td><td style="width:4%;"></td><td style="width:5%;"></td><td style="width:49%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Date:</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October&#160;29, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">COGNEX CORPORATION</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">By:</font></div></td><td style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">/s/ Robert J. Willett</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Robert J. Willett</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">President and Chief Executive Officer</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(principal executive officer)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">By:</font></div></td><td style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">/s/ John J. Curran</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">John J. Curran</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Senior Vice President of Finance, Chief Financial Officer, and Treasurer</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(principal financial and accounting officer)</font></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">33</font></div></div>	</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>a9302018-10qxexhibit311.htm
<DESCRIPTION>EXHIBIT 31.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<!-- Document created using Wdesk 1 -->
		<!-- Copyright 2018 Workiva -->
		<title>Exhibit</title>
	</head>
	<body style="font-family:Times New Roman;font-size:10pt;">
<div><a name="sB15B10DF5DCE54D6833B308EAFD02264"></a></div><div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Exhibit 31.1</font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">CERTIFICATION</font></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">I, Robert J. Willett, certify that:</font></div><div style="line-height:120%;padding-top:16px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1&#160;&#160;&#160;&#160;I have reviewed this quarterly report on Form 10-Q of Cognex Corporation;</font></div><div style="line-height:120%;padding-top:16px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2&#160;&#160;&#160;&#160;Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</font></div><div style="line-height:120%;padding-top:16px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3&#160;&#160;&#160;&#160;Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;</font></div><div style="line-height:120%;padding-top:16px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4&#160;&#160;&#160;&#160;The registrant&#8217;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</font></div><div style="line-height:120%;text-align:justify;font-size:6pt;"><font style="font-family:Arial;font-size:6pt;">&#160;</font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:67px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:43px;"><font style="font-family:Arial;font-size:10pt;">(a)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;</font></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:67px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:43px;"><font style="font-family:Arial;font-size:10pt;">(b)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</font></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:67px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:43px;"><font style="font-family:Arial;font-size:10pt;">(c)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and</font></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:67px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:43px;"><font style="font-family:Arial;font-size:10pt;">(d)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting; and</font></div></td></tr></table><div style="line-height:120%;padding-left:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-left:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5&#160;&#160;&#160;&#160;The registrant&#8217;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions):</font></div><div style="line-height:120%;text-align:justify;font-size:6pt;"><font style="font-family:Arial;font-size:6pt;">&#160;</font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:67px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:43px;"><font style="font-family:Arial;font-size:10pt;">(a)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information; and</font></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:67px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:43px;"><font style="font-family:Arial;font-size:10pt;">(b)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</font></div></td></tr></table><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="6"></td></tr><tr><td style="width:6%;"></td><td style="width:33%;"></td><td style="width:2%;"></td><td style="width:4%;"></td><td style="width:1%;"></td><td style="width:54%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Date:</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October&#160;29, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">By:</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">/s/ Robert J. Willett</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Robert J. Willett</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">President and Chief Executive Officer</font></div></td></tr></table></div></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div>	</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>a9302018-10qxexhibit312.htm
<DESCRIPTION>EXHIBIT 31.2
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<!-- Document created using Wdesk 1 -->
		<!-- Copyright 2018 Workiva -->
		<title>Exhibit</title>
	</head>
	<body style="font-family:Times New Roman;font-size:10pt;">
<div><a name="s1E5C4623CB1B5ED8A206E723EDEC2841"></a></div><div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Exhibit 31.2</font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">CERTIFICATION</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">I, John J. Curran, certify that:</font></div><div style="line-height:120%;padding-top:16px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1&#160;&#160;&#160;&#160;I have reviewed this quarterly report on Form 10-Q of Cognex Corporation;</font></div><div style="line-height:120%;padding-top:16px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2&#160;&#160;&#160;&#160;Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</font></div><div style="line-height:120%;padding-top:16px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3&#160;&#160;&#160;&#160;Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;</font></div><div style="line-height:120%;padding-top:16px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4&#160;&#160;&#160;&#160;The registrant&#8217;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</font></div><div style="line-height:120%;text-align:justify;font-size:6pt;"><font style="font-family:Arial;font-size:6pt;">&#160;</font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:67px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:43px;"><font style="font-family:Arial;font-size:10pt;">(a)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;</font></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:67px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:43px;"><font style="font-family:Arial;font-size:10pt;">(b)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</font></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:67px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:43px;"><font style="font-family:Arial;font-size:10pt;">(c)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and</font></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:67px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:43px;"><font style="font-family:Arial;font-size:10pt;">(d)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting; and</font></div></td></tr></table><div style="line-height:120%;padding-left:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-left:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5&#160;&#160;&#160;&#160;The registrant&#8217;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions):</font></div><div style="line-height:120%;text-align:justify;font-size:6pt;"><font style="font-family:Arial;font-size:6pt;">&#160;</font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:67px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:43px;"><font style="font-family:Arial;font-size:10pt;">(a)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information; and</font></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:67px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:43px;"><font style="font-family:Arial;font-size:10pt;">(b)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</font></div></td></tr></table><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="6"></td></tr><tr><td style="width:7%;"></td><td style="width:32%;"></td><td style="width:2%;"></td><td style="width:4%;"></td><td style="width:1%;"></td><td style="width:54%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Date:</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October&#160;29, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">By:</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">/s/ John J. Curran</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">John J. Curran</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Senior Vice President of Finance, Chief Financial Officer, and Treasurer</font></div></td></tr></table></div></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div>	</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>a9302018-10qxexhibit321.htm
<DESCRIPTION>EXHIBIT 32.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<!-- Document created using Wdesk 1 -->
		<!-- Copyright 2018 Workiva -->
		<title>Exhibit</title>
	</head>
	<body style="font-family:Times New Roman;font-size:10pt;">
<div><a name="s653B9BA2AB7E502E8EEFF68D0E6E3C9F"></a></div><div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Exhibit 32.1*</font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">CERTIFICATION PURSUANT TO</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">18 U.S.C. 1350,</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">AS ADOPTED PURSUANT TO</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</font></div><div style="line-height:120%;padding-top:16px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The undersigned officer of Cognex Corporation (the &#8220;Company&#8221;) hereby certifies to his knowledge that the Company&#8217;s quarterly report on Form 10-Q for the quarterly period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;(the &#8220;Report&#8221;), as filed with the Securities and Exchange Commission on the date hereof, fully complies with the requirements of Section&#160;13(a) or 15(d), as applicable, of the Securities Exchange Act of 1934, as amended, and that the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;">&#160;</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:8%;"></td><td style="width:33%;"></td><td style="width:2%;"></td><td style="width:4%;"></td><td style="width:53%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Date:</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October&#160;29, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">By:</font></div></td><td style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">/s/ Robert J. Willett</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Robert J. Willett</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">President and Chief Executive Officer</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(principal executive officer)</font></div></td></tr></table></div></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;">&#160;</font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"></td></tr><tr><td style="width:4%;"></td><td style="width:96%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">*</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">This certification shall not be deemed &#8220;filed&#8221; for purposes of Section&#160;18 of the Securities Exchange Act of 1934, or otherwise subject to the liability of that section, nor shall it be deemed to be incorporated by reference into any filing under the Securities Act of 1933 or the Securities Exchange Act of 1934.</font></div></td></tr></table></div></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div>	</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>5
<FILENAME>a9302018-10qxexhibit322.htm
<DESCRIPTION>EXHIBIT 32.2
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<!-- Document created using Wdesk 1 -->
		<!-- Copyright 2018 Workiva -->
		<title>Exhibit</title>
	</head>
	<body style="font-family:Times New Roman;font-size:10pt;">
<div><a name="s0BA6C93788C85025A7F4C9816DA6AC6D"></a></div><div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Exhibit 32.2*</font></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">CERTIFICATION PURSUANT TO</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">18 U.S.C. 1350,</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">AS ADOPTED PURSUANT TO</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</font></div><div style="line-height:120%;padding-top:16px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The undersigned officer of Cognex Corporation (the &#8220;Company&#8221;) hereby certifies to his knowledge that the Company&#8217;s quarterly report on Form 10-Q for the quarterly period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">&#32;(the &#8220;Report&#8221;), as filed with the Securities and Exchange Commission on the date hereof, fully complies with the requirements of Section&#160;13(a) or 15(d), as applicable, of the Securities Exchange Act of 1934, as amended, and that the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:Arial;font-size:12pt;">&#160;</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:9%;"></td><td style="width:33%;"></td><td style="width:2%;"></td><td style="width:5%;"></td><td style="width:51%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Date:</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October&#160;29, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">By:</font></div></td><td style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">/s/ John J. Curran</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">John J. Curran</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Senior Vice President of Finance, Chief Financial Officer, and Treasurer</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(principal financial officer)</font></div></td></tr></table></div></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;">&#160;</font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:12pt;"><font style="font-family:inherit;font-size:12pt;"><br></font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"></td></tr><tr><td style="width:4%;"></td><td style="width:96%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">*</font></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">This certification shall not be deemed &#8220;filed&#8221; for purposes of Section&#160;18 of the Securities Exchange Act of 1934, or otherwise subject to the liability of that section, nor shall it be deemed to be incorporated by reference into any filing under the Securities Act of 1933 or the Securities Exchange Act of 1934.</font></div></td></tr></table></div></div><div><br></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div>	</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.INS
<SEQUENCE>6
<FILENAME>cgnx-20180930.xml
<DESCRIPTION>XBRL INSTANCE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!--p:D170A3DF989B55C08A51B876436D0C2A,x:ff56aa80e46f44d7986dd98d4a3cf8ed-->
<xbrli:xbrl xmlns:cgnx="http://www.cognex.com/20180930" xmlns:country="http://xbrl.sec.gov/country/2017-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2017-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2014-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2017-01-31" xmlns:invest="http://xbrl.sec.gov/invest/2013-01-31" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:naics="http://xbrl.sec.gov/naics/2017-01-31" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:sic="http://xbrl.sec.gov/sic/2011-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2011-01-31" xmlns:us-gaap="http://fasb.org/us-gaap/2017-01-31" xmlns:us-roles="http://fasb.org/us-roles/2017-01-31" xmlns:us-types="http://fasb.org/us-types/2017-01-31" xmlns:utreg="http://www.xbrl.org/2009/utr" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<link:schemaRef xlink:href="cgnx-20180930.xsd" xlink:type="simple" />
	<xbrli:context id="FD2018Q3YTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q3">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-10-01</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2016Q4">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">cgnx:AgencyBondsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_BusinessAcquisitionAxis_cgnx_ManateeWorksInc.Member_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cgnx:ManateeWorksInc.Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_BusinessAcquisitionAxis_cgnx_GViVenturesInc.Member_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cgnx:GViVenturesInc.Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_BusinessAcquisitionAxis_cgnx_ChiaroTechnologiesLLCMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cgnx:ChiaroTechnologiesLLCMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:ShortTermInvestmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:ShortTermInvestmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">cgnx:AgencyBondsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:ShortTermInvestmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">cgnx:LongTermInvestmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">cgnx:LongTermInvestmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:ShortTermInvestmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">cgnx:LongTermInvestmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">cgnx:LongTermInvestmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">cgnx:LongTermInvestmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">cgnx:AgencyBondsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">cgnx:LongTermInvestmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:ShortTermInvestmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:ShortTermInvestmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">cgnx:AgencyBondsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:SovereignDebtMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">cgnx:AgencyBondsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:MajorTypesOfDebtAndEquitySecuritiesAxis">us-gaap:SovereignDebtMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OtherIntangibleAssetsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DistributionRightsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cgnx_CustomerContractsAndRelationshipsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cgnx:CustomerContractsAndRelationshipsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cgnx_CustomerContractsAndRelationshipsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cgnx:CustomerContractsAndRelationshipsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OtherIntangibleAssetsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DistributionRightsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueGoodsNetMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesRevenueGoodsNetMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CashFlowHedgingMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ForeignCurrencyGainLossMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ForeignCurrencyGainLossMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CashFlowHedgingMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CashFlowHedgingMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ForeignCurrencyGainLossMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ForeignCurrencyGainLossMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ForeignCurrencyGainLossMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueGoodsNetMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesRevenueGoodsNetMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ForeignCurrencyGainLossMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueGoodsNetMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesRevenueGoodsNetMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ForeignCurrencyGainLossMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueGoodsNetMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesRevenueGoodsNetMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CashFlowHedgingMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ForeignCurrencyGainLossMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_BalanceSheetLocationAxis_cgnx_AccruedExpensesMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:AccruedExpensesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_BalanceSheetLocationAxis_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_BalanceSheetLocationAxis_cgnx_AccruedExpensesMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:AccruedExpensesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_CurrencyAxis_currency_KRW_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:KRW</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_CurrencyAxis_currency_HUF_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:HUF</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_CurrencyAxis_currency_TWD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:TWD</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_CurrencyAxis_currency_GBP_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:GBP</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_CurrencyAxis_currency_CHF_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:CHF</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_CurrencyAxis_currency_CAD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:CAD</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_CurrencyAxis_currency_CHF_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:CHF</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_CurrencyAxis_currency_CAD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:CAD</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_CurrencyAxis_currency_EUR_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:EUR</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_CurrencyAxis_currency_SGD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:SGD</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_CurrencyAxis_currency_SGD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:SGD</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_CurrencyAxis_currency_HUF_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:HUF</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_CurrencyAxis_currency_GBP_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:GBP</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_CurrencyAxis_currency_KRW_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:KRW</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_CurrencyAxis_currency_JPY_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:JPY</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_CurrencyAxis_currency_EUR_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:EUR</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_CurrencyAxis_currency_TWD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:TWD</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_CurrencyAxis_currency_JPY_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CurrencyAxis">currency:JPY</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementScenarioAxis">us-gaap:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201409Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementScenarioAxis">us-gaap:RestatementAdjustmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_ProductOrServiceAxis_cgnx_ApplicationSpecificCustomerSolutionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ProductOrServiceAxis">cgnx:ApplicationSpecificCustomerSolutionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_ProductOrServiceAxis_cgnx_StandardProductsandServicesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ProductOrServiceAxis">cgnx:StandardProductsandServicesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_ProductOrServiceAxis_cgnx_ApplicationSpecificCustomerSolutionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ProductOrServiceAxis">cgnx:ApplicationSpecificCustomerSolutionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_ProductOrServiceAxis_cgnx_ApplicationSpecificCustomerSolutionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ProductOrServiceAxis">cgnx:ApplicationSpecificCustomerSolutionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_ProductOrServiceAxis_cgnx_ApplicationSpecificCustomerSolutionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ProductOrServiceAxis">cgnx:ApplicationSpecificCustomerSolutionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_ProductOrServiceAxis_cgnx_StandardProductsandServicesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ProductOrServiceAxis">cgnx:StandardProductsandServicesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_ProductOrServiceAxis_cgnx_StandardProductsandServicesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ProductOrServiceAxis">cgnx:StandardProductsandServicesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_ProductOrServiceAxis_cgnx_StandardProductsandServicesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ProductOrServiceAxis">cgnx:StandardProductsandServicesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_StatementGeographicalAxis_us-gaap_EuropeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">us-gaap:EuropeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_StatementGeographicalAxis_us-gaap_EuropeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">us-gaap:EuropeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_StatementGeographicalAxis_us-gaap_AmericasMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">us-gaap:AmericasMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_StatementGeographicalAxis_country_CN">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_StatementGeographicalAxis_us-gaap_AmericasMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">us-gaap:AmericasMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_StatementGeographicalAxis_cgnx_AsiaExcludingChinaMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">cgnx:AsiaExcludingChinaMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_StatementGeographicalAxis_country_CN">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_StatementGeographicalAxis_country_CN">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_StatementGeographicalAxis_cgnx_AsiaExcludingChinaMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">cgnx:AsiaExcludingChinaMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_StatementGeographicalAxis_us-gaap_EuropeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">us-gaap:EuropeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_StatementGeographicalAxis_cgnx_AsiaExcludingChinaMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">cgnx:AsiaExcludingChinaMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_StatementGeographicalAxis_cgnx_AsiaExcludingChinaMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">cgnx:AsiaExcludingChinaMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_StatementGeographicalAxis_country_CN">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_StatementGeographicalAxis_us-gaap_AmericasMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">us-gaap:AmericasMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_StatementGeographicalAxis_us-gaap_EuropeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">us-gaap:EuropeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_StatementGeographicalAxis_us-gaap_AmericasMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">us-gaap:AmericasMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201409Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementScenarioAxis">us-gaap:RestatementAdjustmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementScenarioAxis">us-gaap:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201409Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementScenarioAxis">us-gaap:RestatementAdjustmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementScenarioAxis">us-gaap:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_IncomeStatementLocationAxis_cgnx_SellingGeneralAndAdministrativeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">cgnx:SellingGeneralAndAdministrativeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfGoodsTotalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_IncomeStatementLocationAxis_cgnx_SellingGeneralAndAdministrativeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">cgnx:SellingGeneralAndAdministrativeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3QTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfGoodsTotalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-07-03</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfGoodsTotalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_IncomeStatementLocationAxis_cgnx_SellingGeneralAndAdministrativeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">cgnx:SellingGeneralAndAdministrativeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q3YTD_us-gaap_IncomeStatementLocationAxis_cgnx_SellingGeneralAndAdministrativeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">cgnx:SellingGeneralAndAdministrativeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfGoodsTotalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3QTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-02</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q1QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-04-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2017Q1QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-04-02</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_PlanNameAxis_cgnx_GeneralStockOptionPlanMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:GeneralStockOptionPlanMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramFebruary2018Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramFebruary2018Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="I2015Q4SD_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramApril2017Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramApril2017Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2015-11-01</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramApril2017Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramApril2017Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="I2018Q1Feb28_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramFebruary2018Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramFebruary2018Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-02-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramApril2017andFebruary2018Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramApril2017andFebruary2018Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramFebruary2018Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramFebruary2018Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FI2018Q3_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramApril2017Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramApril2017Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="D2018Q1_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201616Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201616Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-01-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_IncomeTaxAuthorityAxis_us-gaap_ForeignCountryMember_us-gaap_IncomeTaxAuthorityNameAxis_us-gaap_RevenueCommissionersIrelandMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:RevenueCommissionersIrelandMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_IncomeTaxAuthorityAxis_us-gaap_DomesticCountryMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="FD2018Q3YTD_us-gaap_IncomeTaxAuthorityAxis_us-gaap_ForeignCountryMember_us-gaap_IncomeTaxAuthorityNameAxis_us-gaap_StateAdministrationOfTaxationChinaMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:StateAdministrationOfTaxationChinaMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="D2018Q4_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-10-29</xbrli:startDate>
			<xbrli:endDate>2018-10-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context>
	<xbrli:context id="I2018Q4_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-10-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context>
	<xbrli:unit id="usdPerShare">
		<xbrli:divide>
			<xbrli:unitNumerator>
				<xbrli:measure>iso4217:USD</xbrli:measure>
			</xbrli:unitNumerator>
			<xbrli:unitDenominator>
				<xbrli:measure>xbrli:shares</xbrli:measure>
			</xbrli:unitDenominator>
		</xbrli:divide>
	</xbrli:unit>
	<xbrli:unit id="Category">
		<xbrli:measure>cgnx:Category</xbrli:measure>
	</xbrli:unit>
	<xbrli:unit id="cad">
		<xbrli:measure>iso4217:CAD</xbrli:measure>
	</xbrli:unit>
	<xbrli:unit id="shares">
		<xbrli:measure>xbrli:shares</xbrli:measure>
	</xbrli:unit>
	<xbrli:unit id="sgd">
		<xbrli:measure>iso4217:SGD</xbrli:measure>
	</xbrli:unit>
	<xbrli:unit id="iso4217_JPY">
		<xbrli:measure>iso4217:JPY</xbrli:measure>
	</xbrli:unit>
	<xbrli:unit id="iso4217_KRW">
		<xbrli:measure>iso4217:KRW</xbrli:measure>
	</xbrli:unit>
	<xbrli:unit id="twd">
		<xbrli:measure>iso4217:TWD</xbrli:measure>
	</xbrli:unit>
	<xbrli:unit id="eur">
		<xbrli:measure>iso4217:EUR</xbrli:measure>
	</xbrli:unit>
	<xbrli:unit id="usd">
		<xbrli:measure>iso4217:USD</xbrli:measure>
	</xbrli:unit>
	<xbrli:unit id="group">
		<xbrli:measure>cgnx:group</xbrli:measure>
	</xbrli:unit>
	<xbrli:unit id="number">
		<xbrli:measure>xbrli:pure</xbrli:measure>
	</xbrli:unit>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue contextRef="FI2018Q3" decimals="-3" id="Fact-66F4848E4A0D5F669D8D634B48D9D352" unitRef="usd">9455000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-9D81FFD7CDF05A1AB6FF42AE04D30BF7" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-95D4C06BE951542DA181F30794201AFA" unitRef="usd">6600000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-30C9143FC8395623A273053BFAEC6E49" unitRef="usd">2855000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-A253AC110A5E5B7B9370D9E6F2FFB21B" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-E47441A0C97593D51645A7188871D771" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-2EF8B418B65250D693D98E815550686D" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue contextRef="FI2018Q3" decimals="-3" id="Fact-D7904C89576C560BAB15F24C750E8472" unitRef="usd">6572000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-3D65AD09BD3C54ECA0073E61E0DA4479" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-EB4D7529B73C5458A7ABAA9FC06DDE87" unitRef="usd">5138000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-E5052A5F448D58F3ADDF92D771E8A9EB" unitRef="usd">1434000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-E28174A8B0505513A63C637B11F5DBAA" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-0FC0D90A9A4045317593A7188362295A" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-40BB4F1D62ED5822BDBB97C1CE4D3FDE" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue contextRef="FI2018Q3" decimals="-3" id="Fact-4D374EBC2B375A31A25931606342B075" unitRef="usd">151316000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-2767751F02285D4D9E73F862A145E085" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-E1C7FF360854551399B634D71BD4B471" unitRef="usd">30840000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-BBDF314688F15572B9E5E6046319E83F" unitRef="usd">80605000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-D736A61C49625E839099DFE4FDB5F587" unitRef="usd">842000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-EE3B42345B2B62FE2248A718774E0F60" unitRef="usd">6318000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-45F635153EAC5BEDA0690CFFD8F2E8C3" unitRef="usd">32711000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue contextRef="FI2018Q3" decimals="-3" id="Fact-4725F63F9E935BCB9A42BE66D46C8BA6" unitRef="usd">40471000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-0F681301B62153A9954705370F077B0D" unitRef="usd">5940000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-BB6AC6144DB15FC78326B49224CDBC9A" unitRef="usd">12102000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-88D0E5CE48445156825F2153594957AC" unitRef="usd">22429000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-00FED894EEF35A77B6074FCD4B50BBB7" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-D9AF845611408B02ADDFA7187F27ADA8" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-0AD30E7A73A35FD5AABED86BDAE40792" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue contextRef="FI2018Q3" decimals="-3" id="Fact-615D878D8A085C50BA5869DF4B6D4C84" unitRef="usd">74115000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-161A482B565750108C1EBBBF8D6D8879" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-49B76162DC4B560881EC68348C22D74D" unitRef="usd">5431000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-2C13B8CCC11B59FBB639C25EC90385CD" unitRef="usd">68684000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-7722A0A9A4345967B4EC17FA17276827" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-E7BD4EA34EBCED6BDDDAA7187B433F43" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue>
	<cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-D22DD9902B535C3DA928995305DEE1F7" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue>
	<cgnx:CashCashEquivalentsShortTermAndLongTermInvestments contextRef="FI2017Q4" decimals="-3" id="Fact-FBB0D670070B5339B5C5F44A7BBE84EF" unitRef="usd">827984000</cgnx:CashCashEquivalentsShortTermAndLongTermInvestments>
	<cgnx:CashCashEquivalentsShortTermAndLongTermInvestments contextRef="FI2018Q3" decimals="-3" id="Fact-86C1D55EA44F5303A8D02B10EBBCE004" unitRef="usd">809316000</cgnx:CashCashEquivalentsShortTermAndLongTermInvestments>
	<cgnx:DeferredRevenueForeignCurrencyExchangeAdjustment contextRef="FD2018Q3YTD" decimals="-3" id="Fact-6AA8A2DB1FB4FCA49D34AD890F780C00" unitRef="usd">-986000</cgnx:DeferredRevenueForeignCurrencyExchangeAdjustment>
	<cgnx:EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent contextRef="FD2017Q3QTD" decimals="2" id="Fact-D3E82035EDB55DC69F52726A030FFC4B" unitRef="number">0.07</cgnx:EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent>
	<cgnx:EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent contextRef="FD2017Q3YTD" decimals="2" id="Fact-ED0DE5460EC25DD0A8134EAFE7B97904" unitRef="number">0.13</cgnx:EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent>
	<cgnx:EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent contextRef="FD2018Q3QTD" decimals="2" id="Fact-4B2894814A5E5E949748D440DFC1FFEC" unitRef="number">0.04</cgnx:EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent>
	<cgnx:EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent contextRef="FD2018Q3YTD" decimals="2" id="Fact-092FA77860A1511F846904006DC19A70" unitRef="number">0.05</cgnx:EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent>
	<cgnx:EffectiveIncomeTaxRateReconciliationTaxAct2017 contextRef="FD2017Q3QTD" decimals="2" id="Fact-6B621606B4AA88549AF6A7D53ACBC409" unitRef="number">0.00</cgnx:EffectiveIncomeTaxRateReconciliationTaxAct2017>
	<cgnx:EffectiveIncomeTaxRateReconciliationTaxAct2017 contextRef="FD2017Q3YTD" decimals="2" id="Fact-46930997B5E926E3DCE3A7D5A2D22112" unitRef="number">0.00</cgnx:EffectiveIncomeTaxRateReconciliationTaxAct2017>
	<cgnx:EffectiveIncomeTaxRateReconciliationTaxAct2017 contextRef="FD2018Q3QTD" decimals="2" id="Fact-38A260645EBC27486FFEA7D3CC44F1D3" unitRef="number">-0.09</cgnx:EffectiveIncomeTaxRateReconciliationTaxAct2017>
	<cgnx:EffectiveIncomeTaxRateReconciliationTaxAct2017 contextRef="FD2018Q3YTD" decimals="2" id="Fact-ABCC0F4CDABDC90CD078A7D57E316724" unitRef="number">-0.04</cgnx:EffectiveIncomeTaxRateReconciliationTaxAct2017>
	<cgnx:EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount contextRef="FI2018Q3" decimals="INF" id="Fact-2FB0B0E2DB7053BF9284AB460F9D503D" unitRef="usd">0</cgnx:EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount>
	<cgnx:EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition contextRef="FD2018Q3YTD" id="Fact-4C92B724C4285EA380B87D3B361E0B3D">P1Y7M10D</cgnx:EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition>
	<cgnx:EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement contextRef="FI2018Q3" decimals="2" id="Fact-500787F62C8559A99F0ADC8936D2A997" unitRef="number">0.12</cgnx:EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement>
	<cgnx:EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement contextRef="FI2018Q3" decimals="2" id="Fact-C7126F2BF1BC588FBDE20C03BBB7FDF8" unitRef="number">0.08</cgnx:EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement>
	<cgnx:ExpirationPeriodOfStockOptionPlan contextRef="FD2018Q3YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" id="Fact-3D9BD4BEC36F5E1A9390AA7F239EFC8C">P10Y</cgnx:ExpirationPeriodOfStockOptionPlan>
	<cgnx:IncomeTaxExaminationYearsUnderExaminationOtherEntities contextRef="FD2018Q3YTD" id="Fact-7F9EDF5C1A035E7F82DB36EE919194B4">2014 through 2017</cgnx:IncomeTaxExaminationYearsUnderExaminationOtherEntities>
	<cgnx:IncreaseDecreaseInterestAndPenalties contextRef="FD2018Q3YTD" decimals="-3" id="Fact-32BD0D0A756C59C69825DA79BEF97319" unitRef="usd">33000</cgnx:IncreaseDecreaseInterestAndPenalties>
	<cgnx:IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates contextRef="FD2017Q1QTD" decimals="0" id="Fact-E0D2EE28054950179813584447C8569A" unitRef="usd">673000</cgnx:IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates>
	<cgnx:IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates contextRef="FD2018Q1QTD" decimals="0" id="Fact-B8EE3BD9B270517F887934BBE4D1E01F" unitRef="usd">1283000</cgnx:IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates>
	<cgnx:LiabilityForUncertainTaxPositions contextRef="FI2018Q3" decimals="-3" id="Fact-AB249701660E5D3AB7BCE432EF4CF5C4" unitRef="usd">7674000</cgnx:LiabilityForUncertainTaxPositions>
	<cgnx:MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves contextRef="FD2018Q3YTD" decimals="-3" id="Fact-5CBDF4ECE0D154B79D8D44FE4A0CE74E" unitRef="usd">1300000</cgnx:MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves>
	<cgnx:MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves contextRef="FD2018Q3YTD" decimals="-3" id="Fact-96A31E7599CC582E89FE0FF4DDA7B538" unitRef="usd">1200000</cgnx:MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves>
	<cgnx:NumberOfGroupsWithinEmployeePopulation contextRef="FI2018Q3" decimals="INF" id="Fact-1AA2BE2A40545AD182D707966256BB3F" unitRef="group">2</cgnx:NumberOfGroupsWithinEmployeePopulation>
	<cgnx:Paymentofcontingentconsideration contextRef="FD2017Q3YTD" decimals="-3" id="Fact-C62C7CF254865CFBB61F6215E9868892" unitRef="usd">1926000</cgnx:Paymentofcontingentconsideration>
	<cgnx:Paymentofcontingentconsideration contextRef="FD2018Q3YTD" decimals="-3" id="Fact-BEB8F2AA157259D984F12A7DD00A8AD0" unitRef="usd">1000000</cgnx:Paymentofcontingentconsideration>
	<cgnx:Paymentofcontingentconsideration contextRef="FD2018Q3YTD_us-gaap_BusinessAcquisitionAxis_cgnx_GViVenturesInc.Member_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" decimals="-3" id="Fact-6E02A8C16B075D0CB02296A04CAF40B2" unitRef="usd">1000000</cgnx:Paymentofcontingentconsideration>
	<cgnx:PaymentsForDivestitureofBusinesses contextRef="FD2017Q3YTD" decimals="-3" id="Fact-43B71FFCFB6357ED9600082FF8F50BB9" unitRef="usd">291000</cgnx:PaymentsForDivestitureofBusinesses>
	<cgnx:PaymentsForDivestitureofBusinesses contextRef="FD2018Q3YTD" decimals="-3" id="Fact-9586F34F7D3258098C424F2E7762D879" unitRef="usd">0</cgnx:PaymentsForDivestitureofBusinesses>
	<cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue contextRef="FI2018Q3" decimals="-3" id="Fact-2F382006AB6D5E4D88871C1AA7FA93EE" unitRef="usd">154377000</cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue>
	<cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue contextRef="FD2017Q3QTD" decimals="0" id="Fact-76FF89A40136530A820D942CC1B11D62" unitRef="usd">844000</cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue>
	<cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue contextRef="FD2017Q3YTD" decimals="0" id="Fact-675DA59018BE51319DB82B99AD9650F3" unitRef="usd">19557000</cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue>
	<cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue contextRef="FD2018Q3QTD" decimals="0" id="Fact-6E902E8505A05F928E3AA61F02BE4B01" unitRef="usd">997000</cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue>
	<cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue contextRef="FD2018Q3YTD" decimals="0" id="Fact-23F8E621B62F505EAC7870563128B50E" unitRef="usd">27557000</cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue>
	<cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue contextRef="FD2017Q3QTD" decimals="0" id="Fact-8AB3C0BF3D5A500A933165D712AF605E" unitRef="usd">28462000</cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue>
	<cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue contextRef="FD2017Q3YTD" decimals="0" id="Fact-C8103AB040E654038F078406D21DB0D2" unitRef="usd">100913000</cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue>
	<cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue contextRef="FD2018Q3QTD" decimals="0" id="Fact-5498B0087A7858F6A5F9C3BEFD659F2C" unitRef="usd">17985000</cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue>
	<cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue contextRef="FD2018Q3YTD" decimals="0" id="Fact-96F4F8124D255BBD9E861F0F2D5394E4" unitRef="usd">50975000</cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue>
	<cgnx:StockRepurchaseProgramAggregateNumberofSharesRepurchased contextRef="FI2018Q3_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramApril2017Member" decimals="-3" id="Fact-EA022F3AD0AD52E6B99F4E2697424ECB" unitRef="shares">1744000</cgnx:StockRepurchaseProgramAggregateNumberofSharesRepurchased>
	<cgnx:StockRepurchaseProgramValue contextRef="FI2018Q3_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramApril2017Member" decimals="-3" id="Fact-19B53B58DD0A5F4F8040E99D9D9ACC4F" unitRef="usd">100000000</cgnx:StockRepurchaseProgramValue>
	<cgnx:StockRepurchaseProgramValue contextRef="I2018Q4_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember" decimals="0" id="Fact-FD32479BCC69510F8B00B16D4CAB39B5" unitRef="usd">200000000</cgnx:StockRepurchaseProgramValue>
	<cgnx:TaxyearsopentoexaminationbyInternalRevenueService contextRef="FD2018Q3YTD" id="Fact-6B0217D711EF519FA809D5B492962C77">2015 through 2017</cgnx:TaxyearsopentoexaminationbyInternalRevenueService>
	<cgnx:Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets contextRef="FI2018Q3" decimals="-3" id="Fact-A5E4C5FA203A52F4929C8797457588A7" unitRef="usd">1028000</cgnx:Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets>
	<cgnx:Vestingperiodperformancebasedrestrictedstockyears contextRef="FD2018Q3YTD" id="Fact-8AD5333895245B32BCA856B3846E23D4">P1Y</cgnx:Vestingperiodperformancebasedrestrictedstockyears>
	<cgnx:Vestingperiodtimebasedrestrictedstockyears contextRef="FD2018Q3YTD" id="Fact-28922DF4ED28519EBFA0FF88F4C2D331">P3Y</cgnx:Vestingperiodtimebasedrestrictedstockyears>
	<dei:AmendmentFlag contextRef="FD2018Q3YTD" id="Fact-74AE021EBBF85D169FE3AC5C67053A23">false</dei:AmendmentFlag>
	<dei:CurrentFiscalYearEndDate contextRef="FD2018Q3YTD" id="Fact-BECF0D76B92F506AA14C56D71B065B25">--12-31</dei:CurrentFiscalYearEndDate>
	<dei:DocumentFiscalPeriodFocus contextRef="FD2018Q3YTD" id="Fact-93BEC87FD6A450348106E1AB8EDE0ECF">Q3</dei:DocumentFiscalPeriodFocus>
	<dei:DocumentFiscalYearFocus contextRef="FD2018Q3YTD" id="Fact-19BB51785C8655C1BFC1C359A3BA4D80">2018</dei:DocumentFiscalYearFocus>
	<dei:DocumentPeriodEndDate contextRef="FD2018Q3YTD" id="Fact-B39C23CAAA6756CE815F55D460809E89">2018-09-30</dei:DocumentPeriodEndDate>
	<dei:DocumentType contextRef="FD2018Q3YTD" id="Fact-5BDF605C4EA8589A9DF2E321E3898274">10-Q</dei:DocumentType>
	<dei:EntityCentralIndexKey contextRef="FD2018Q3YTD" id="Fact-C649EA7858BF5C70B91FC7BF84EBF8CD">0000851205</dei:EntityCentralIndexKey>
	<dei:EntityCommonStockSharesOutstanding contextRef="FI2018Q3" decimals="0" id="Fact-82DF3C523E885C4CB46883D26FB078DC" unitRef="shares">172191187</dei:EntityCommonStockSharesOutstanding>
	<dei:EntityFilerCategory contextRef="FD2018Q3YTD" id="Fact-C3B73B8B26485C3692BF9BDF818654F9">Large Accelerated Filer</dei:EntityFilerCategory>
	<dei:EntityRegistrantName contextRef="FD2018Q3YTD" id="Fact-90C87D7606615ADDAFEC739158072E21">COGNEX CORP</dei:EntityRegistrantName>
	<us-gaap:AccountsPayableCurrent contextRef="FI2017Q4" decimals="-3" id="Fact-D64A1B9ECF9C5CE6BA9E57EC87685420" unitRef="usd">23463000</us-gaap:AccountsPayableCurrent>
	<us-gaap:AccountsPayableCurrent contextRef="FI2018Q3" decimals="-3" id="Fact-6DD7F4DA8BA3573F8A397D1D187C9439" unitRef="usd">22295000</us-gaap:AccountsPayableCurrent>
	<us-gaap:AccountsReceivableNetCurrent contextRef="FI2017Q4" decimals="-3" id="Fact-AF0EA64CE06B5678A05E6693752AC40C" unitRef="usd">119388000</us-gaap:AccountsReceivableNetCurrent>
	<us-gaap:AccountsReceivableNetCurrent contextRef="FI2018Q3" decimals="-3" id="Fact-889B3E21C9B7588992D63B98F02FCB48" unitRef="usd">135441000</us-gaap:AccountsReceivableNetCurrent>
	<us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments contextRef="FD2017Q3YTD" decimals="-3" id="Fact-37C8BCBD081D5065BDF0A1F21258E430" unitRef="usd">-188000</us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments>
	<us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments contextRef="FD2018Q3YTD" decimals="-3" id="Fact-AD007677314E5464B431EE4886D2BFAF" unitRef="usd">-123000</us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments>
	<us-gaap:AccruedIncomeTaxes contextRef="FI2017Q4" decimals="-3" id="Fact-9CD46CB7339B59CEA174E21FE1BE0B2E" unitRef="usd">66741000</us-gaap:AccruedIncomeTaxes>
	<us-gaap:AccruedIncomeTaxes contextRef="FI2018Q3" decimals="-3" id="Fact-28F5337D60E35EAB9194FE469453CC6D" unitRef="usd">51607000</us-gaap:AccruedIncomeTaxes>
	<us-gaap:AccruedIncomeTaxesCurrent contextRef="FI2017Q4" decimals="-3" id="Fact-2956CEDB01525C9EA8483C8E2F09C810" unitRef="usd">11503000</us-gaap:AccruedIncomeTaxesCurrent>
	<us-gaap:AccruedIncomeTaxesCurrent contextRef="FI2017Q4_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-4EF940D47C028DAA1EF5AD84EE3861C1" unitRef="usd">112000</us-gaap:AccruedIncomeTaxesCurrent>
	<us-gaap:AccruedIncomeTaxesCurrent contextRef="FI2017Q4_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-0B1E6F05881A0F7FED1BAD84EE6B3A66" unitRef="usd">11391000</us-gaap:AccruedIncomeTaxesCurrent>
	<us-gaap:AccruedIncomeTaxesCurrent contextRef="FI2018Q3" decimals="-3" id="Fact-C027A2852A8C585AA332ECA682177427" unitRef="usd">8974000</us-gaap:AccruedIncomeTaxesCurrent>
	<us-gaap:AccruedLiabilitiesCurrent contextRef="FI2017Q4" decimals="-3" id="Fact-E52E769634ED5E35BFB76BF06CE4DB70" unitRef="usd">68249000</us-gaap:AccruedLiabilitiesCurrent>
	<us-gaap:AccruedLiabilitiesCurrent contextRef="FI2018Q3" decimals="-3" id="Fact-E0043C9E461758328A3A8F6622BD923E" unitRef="usd">66632000</us-gaap:AccruedLiabilitiesCurrent>
	<us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="FI2017Q4" decimals="-3" id="Fact-E37C3FAEF81159C593CBD4D19CEC533B" unitRef="usd">-34599000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
	<us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="FI2018Q3" decimals="-3" id="Fact-2DA0073BC83158E6B4565C4DD49CB481" unitRef="usd">-40392000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
	<us-gaap:AdditionalPaidInCapitalCommonStock contextRef="FI2017Q4" decimals="-3" id="Fact-59E4AE3867B354469D05D950755B086B" unitRef="usd">461338000</us-gaap:AdditionalPaidInCapitalCommonStock>
	<us-gaap:AdditionalPaidInCapitalCommonStock contextRef="FI2018Q3" decimals="-3" id="Fact-3C5746A4B10E587BBA556FBFC0FD0439" unitRef="usd">518556000</us-gaap:AdditionalPaidInCapitalCommonStock>
	<us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="FD2018Q3YTD" decimals="-3" id="Fact-25AC192F5DD1595AAA70B0BCBAAA8BD6" unitRef="usd">31339000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
	<us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" decimals="-3" id="Fact-EBE04AC431C858B6B9BD1603D9712C41" unitRef="usd">31339000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2017Q3QTD" decimals="-3" id="Fact-1CFBE0A680E15782B30BE958D3B6858F" unitRef="usd">8026000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2017Q3QTD_us-gaap_IncomeStatementLocationAxis_cgnx_SellingGeneralAndAdministrativeMember" decimals="-3" id="Fact-3AB7325403145DA580C08AA57C17DDB0" unitRef="usd">4741000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2017Q3QTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfGoodsTotalMember" decimals="-3" id="Fact-4F0BF7CDEE595C51A9C0AC19549FB4CB" unitRef="usd">520000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2017Q3QTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember" decimals="-3" id="Fact-B242DEDFD8E258B2AE87227BB616F70F" unitRef="usd">2765000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2017Q3YTD" decimals="-3" id="Fact-BC1B4604F86156DEA12D3C7ACB5C598C" unitRef="usd">23355000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2017Q3YTD_us-gaap_IncomeStatementLocationAxis_cgnx_SellingGeneralAndAdministrativeMember" decimals="-3" id="Fact-B8D70775C18E5F01B1F16170D1F40E3C" unitRef="usd">13861000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2017Q3YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfGoodsTotalMember" decimals="-3" id="Fact-F519A2A5CBCF55D29377B434753DC989" unitRef="usd">1404000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2017Q3YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember" decimals="-3" id="Fact-751A5EEC9B6A57B6BD7AB69237E9E977" unitRef="usd">8090000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2018Q3QTD" decimals="-3" id="Fact-8B14CFFFDBDA5C87BE8A20A45CFB7A43" unitRef="usd">9143000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2018Q3QTD_us-gaap_IncomeStatementLocationAxis_cgnx_SellingGeneralAndAdministrativeMember" decimals="-3" id="Fact-DB557492B0125A608EEA6E0262FE831E" unitRef="usd">5402000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2018Q3QTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfGoodsTotalMember" decimals="-3" id="Fact-648C49190B61501A8AFA27C6D1759981" unitRef="usd">544000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2018Q3QTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember" decimals="-3" id="Fact-58C3E94F57945028B41EC085AA4D5720" unitRef="usd">3197000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2018Q3YTD" decimals="-3" id="Fact-BC0B0789CFC456419AEA0F8DA6BBF3D2" unitRef="usd">31339000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2018Q3YTD_us-gaap_IncomeStatementLocationAxis_cgnx_SellingGeneralAndAdministrativeMember" decimals="-3" id="Fact-A3703DF96F975F9EA6AD5C7B6332E3F2" unitRef="usd">18275000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2018Q3YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfGoodsTotalMember" decimals="-3" id="Fact-C6BBCD5B7AF05E10A2797A03013FE708" unitRef="usd">1898000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllocatedShareBasedCompensationExpense contextRef="FD2018Q3YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember" decimals="-3" id="Fact-1FDB77D81EA856E8846F5DF224F51F62" unitRef="usd">11166000</us-gaap:AllocatedShareBasedCompensationExpense>
	<us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="FI2017Q4" decimals="-3" id="Fact-BC16FBCA9D3E563FA73DD58E8A205B46" unitRef="usd">1568000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
	<us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="FI2018Q3" decimals="-3" id="Fact-F3163DC1CAD15124B938315AF378B9BB" unitRef="usd">1501000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
	<us-gaap:AmortizationOfIntangibleAssets contextRef="FD2017Q3YTD" decimals="-3" id="Fact-ED940E6DC48453F0B4432F39AC0938A1" unitRef="usd">2539000</us-gaap:AmortizationOfIntangibleAssets>
	<us-gaap:AmortizationOfIntangibleAssets contextRef="FD2018Q3YTD" decimals="-3" id="Fact-59C8DA5BE4AF550A8CA655425EC5A6CD" unitRef="usd">2307000</us-gaap:AmortizationOfIntangibleAssets>
	<us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="FD2017Q3QTD" decimals="INF" id="Fact-A37B20DC8DD859218A7FC0078B529FEA" unitRef="shares">466000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
	<us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="FD2017Q3YTD" decimals="INF" id="Fact-517452841B715BDE9B45A3FDE5107D8C" unitRef="shares">3108000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
	<us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="FD2018Q3QTD" decimals="INF" id="Fact-8596F012851455DE94A230DE0B9D1335" unitRef="shares">2796000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
	<us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="FD2018Q3YTD" decimals="INF" id="Fact-2ABBC6EB6B805BDE9A16D5BEFC24A586" unitRef="shares">2353000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
	<us-gaap:Assets contextRef="FI2017Q4" decimals="-3" id="Fact-F6C8D46E45FE5D2B98EF41CD997564CD" unitRef="usd">1287753000</us-gaap:Assets>
	<us-gaap:Assets contextRef="FI2018Q3" decimals="-3" id="Fact-3C55E1932B395FB188538AF7B8364ACE" unitRef="usd">1324696000</us-gaap:Assets>
	<us-gaap:AssetsCurrent contextRef="FI2017Q4" decimals="-3" id="Fact-0BF2C81412B45F8B9A07C90CB9F1EFE6" unitRef="usd">629991000</us-gaap:AssetsCurrent>
	<us-gaap:AssetsCurrent contextRef="FI2018Q3" decimals="-3" id="Fact-1F52AE9814DC5F68921CF92B12FB9D50" unitRef="usd">798498000</us-gaap:AssetsCurrent>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3" decimals="-3" id="Fact-FCA8FD09A7B75CEDA18504FCE0B8FBEB" unitRef="usd">608000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-421FEC0195765F9CAEB24E3D8CA6253F" unitRef="usd">10000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-BFB1DC24B2C75C5B8FC379822FC704B8" unitRef="usd">33000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-E93B4507BF47534BACA47E57B1FE14CF" unitRef="usd">469000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-E6D87A648EF65D5D9E08DF38420DA0FF" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-9AD6A808BEEF5DFF9FED448EEFF1230F" unitRef="usd">32000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-617E3135F4BD2BE90194ACEC22BC908A" unitRef="usd">7000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-B115ED3FC8336BBEE930ACE9B4B3DD8D" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-4D16AB74688E5D328EDDF098176EB4BA" unitRef="usd">1000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-4499050F8FCC51AF8528D9769C433B8F" unitRef="usd">56000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-EB139FA8A6A45861A2E5FE79AFEF847B" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-F7D6830EB4BBBE800EE6ACE7225E84DC" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-87D55FAB186B5DE18148147B5F4CD546" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3" decimals="-3" id="Fact-2B6FEFF87EF6588EBFD893E009BB29FC" unitRef="usd">1460000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-AAFA21AE669A549F89456DB6BA248DA4" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-AA21B148A33E54359454F0498397B88D" unitRef="usd">198000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-EFBAA1346AA35E41977160BE632A510E" unitRef="usd">343000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-14FE20DB9C365BF99E6441DC118E26D5" unitRef="usd">13000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-218B004C942C5F4B9F572FA2F78D6C93" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-FB28A388C7F7C1D81EDBACEC6C0EDD4A" unitRef="usd">14000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-2C80C4FCF8CFC80632FBACEA007118E5" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-DE22078FE2FB56A2B52C7CB3434CC7C1" unitRef="usd">209000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-6E039155F3E95CED9028C5C25C564207" unitRef="usd">340000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-9DCD28E6FD3F5B0685F36205A71631FC" unitRef="usd">6000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-21803AF78CCDB8D7D4BFACE782ADECD8" unitRef="usd">53000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-1232516E38985A02B8DC4C02CE583DC7" unitRef="usd">284000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-7645A8FAB9FC5968958AE32905766792" unitRef="usd">407000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-7386AC8237F25DF7AB144C737AB822F0" unitRef="usd">683000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-D497A0909A57E7C53D6DACF07B2714F4" unitRef="usd">19000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-3EE1EBBA9DB3CB9BC1BEACEFE89C5F45" unitRef="usd">53000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-8501FFFE2ED9E4B8D543ACEF8353DACE" unitRef="usd">298000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3" decimals="-3" id="Fact-EB1B070495655CC587909695AED61711" unitRef="usd">702797000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-A53CCA3CEBAB578E9853DAEEFCD94B33" unitRef="usd">5930000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-2F24EB36599F5DCB81BD821E894EBD76" unitRef="usd">60276000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-32964436C1425007A9C830EA45EDA9A6" unitRef="usd">175881000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-C10DE30231555C2ABF6543D4AC1645DA" unitRef="usd">855000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-7845694F1D0E5040BEBB51CEA67698C2" unitRef="usd">6286000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-0CB04F66401036BC427DACEBD0C8A623" unitRef="usd">32718000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-0047BCE5FAC4927D0301ACE969A1A8A3" unitRef="usd">2969000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-41097519B7515A01B49ABFEA69BFDA97" unitRef="usd">71646000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-E6381096DD0352CA98A0C0C61FB94BA8" unitRef="usd">138383000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-C12B8EA4A3F05CB3867B22F5E3D9A8DE" unitRef="usd">6050000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-BCE38BB7DB60CCE05429ACE68AF024A7" unitRef="usd">8172000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-42534DA0EBD55B61BF31734BDF3E8B48" unitRef="usd">193631000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3" decimals="-3" id="Fact-98B1A80AAD7552E3B129FE59E6FF2486" unitRef="usd">701945000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-E48AF2ED3423564CACAD562BBB98CC38" unitRef="usd">5940000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-6838A72740555298A8D8F5CE0B71C470" unitRef="usd">60111000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-C2D03007F4B151C3A4E8E8FDAEA1BC70" unitRef="usd">176007000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-E89E02E5430658008BB99F398CFDC320" unitRef="usd">842000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-1A3B5D421D9452809E522DFEBFB3918C" unitRef="usd">6318000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_cgnx_LongTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-9A477DE8C4C62B03AA16ACECB87B812D" unitRef="usd">32711000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-C6D5A7A8C197C962995AACEA4DCED5BC" unitRef="usd">2969000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-F1176519360352A596132B1665A8BFFA" unitRef="usd">71438000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-6DE0B73F95B35AC9924530BB15393334" unitRef="usd">138099000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-59F29846932F541D876568FA383995F6" unitRef="usd">6044000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-7D9F680A62870189F025ACE8D09C8156" unitRef="usd">8119000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecurities contextRef="FI2018Q3_us-gaap_InvestmentTypeAxis_us-gaap_ShortTermInvestmentsMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-43963AAE612059DF9B8B4D85D5AE5086" unitRef="usd">193347000</us-gaap:AvailableForSaleSecurities>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="FI2018Q3" decimals="-3" id="Fact-3DF0CCF2F263584EA470DCBF294F81DA" unitRef="usd">681000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-33641F8DFE8C56F58D4DEE8A25DA300A" unitRef="usd">200000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-77447B7ABBAB575894C8E0E70ACDE59A" unitRef="usd">297000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-45085D2BC16E6DC6D59CACF07738CD13" unitRef="usd">13000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-C68CC45DAAB9C25D7664ACEFE50FC0C9" unitRef="usd">47000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-67AF5C8AB25CC3598E38ACEF7F3BF6E9" unitRef="usd">124000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue contextRef="FI2018Q3" decimals="-3" id="Fact-524241B16DCB51B7BF48C7EDF72CC644" unitRef="usd">466837000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-1B0B94C20A5B5F99B115E3BEE47B3AB8" unitRef="usd">95934000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-0427979717655323B44BBDACF666A2D9" unitRef="usd">158950000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-97117F5159CA8AA1CD52ACF07929EEC1" unitRef="usd">3696000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-CE663A158EB28636A556ACEFE70C482A" unitRef="usd">8119000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-A9977DA1C71A08BCF146ACEF8160AC30" unitRef="usd">200138000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="FI2018Q3" decimals="-3" id="Fact-C81504B5AE5C510BA6DC0815415109EA" unitRef="usd">779000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-67DF1AF34CBE542EA0A264E21E3F6C62" unitRef="usd">207000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-EFAC923B1AF456CFB27291861E51B120" unitRef="usd">386000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-6C6ECEBF32AC275CE5D1ACF07353C164" unitRef="usd">6000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-FA4070790DA50FA60B00ACEFE0D31FE1" unitRef="usd">6000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-104AE7AE8720C58F2292ACEF7A8DA424" unitRef="usd">174000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue contextRef="FI2018Q3" decimals="-3" id="Fact-8FE368A790565F17A6F6FC533B80149A" unitRef="usd">317195000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-4E557614AB4D56F188AE7E042674771E" unitRef="usd">57678000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-D868DB0FE32D501299164AB13C7C1F01" unitRef="usd">116028000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-0B346F339E22D2CB7AC1ACF0715C6630" unitRef="usd">2854000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-B28D27B648237283F91BACEFDE6EB11D" unitRef="usd">3527000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-96772434F4930D8A2CC9ACEF0B3D4799" unitRef="usd">137108000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue contextRef="FI2018Q3" decimals="-3" id="Fact-D989F1B8BF3858098BFF0B97F2264750" unitRef="usd">149642000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-F35C1F60A75D5B90B44AD629770ED5D5" unitRef="usd">38256000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-9FB6DAFD4E135FAAA24737A6FF3A3166" unitRef="usd">42922000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-A19E7E1B1F71B67337BDACF0754D83CC" unitRef="usd">842000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-79D42A12D354E058E4DCACEFE3025D3B" unitRef="usd">4592000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue>
	<us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-FE7ED4F0432B7A944D0FACEF7D27AC02" unitRef="usd">63030000</us-gaap:AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue>
	<us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="FI2018Q3" decimals="-3" id="Fact-3C4FF5DDBB0952A39CF41E58409B8EE7" unitRef="usd">420016000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
	<us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-5023E6876BF55E98AFDE6B02ED4D8A9E" unitRef="usd">2969000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
	<us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-4C7ECF4296D15384B5B65285195B6A3F" unitRef="usd">71438000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
	<us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-0C16CE6CDD4C5687B0235484D975E651" unitRef="usd">138099000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
	<us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-84F019784CC25027AAC036EFA5DABD28" unitRef="usd">6044000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
	<us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-E2C19C901B43570FF5B0A71872F1746F" unitRef="usd">8119000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
	<us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-6D04A8B4132C551599E41A3763CFE941" unitRef="usd">193347000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3" decimals="-3" id="Fact-3C0D4576F43B5E2A8CDE4AEFB7AD036A" unitRef="usd">701945000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-3AE17D07DED6D6BCA3AFA7E90701D825" unitRef="usd">8909000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-35DAE84160C550459FBB9F076CA4ACAB" unitRef="usd">131549000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-2E4C658FA5C153379A0523193F5814C2" unitRef="usd">314106000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-5E6FE66CB05E5A8F8774210D33D6F429" unitRef="usd">6886000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-A45074201BEA58C38D3B4081398B3AFB" unitRef="usd">14437000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-2D5C45748C0556878509B53D8FF690C4" unitRef="usd">226058000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-1803E74A0C165A5ABF6DF6BBB4E59862" unitRef="usd">8909000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-CA1B81E3DD625B4890E9E8FD17F046C5" unitRef="usd">131549000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-D8003F8AA3415F2AB473B3978DCE5A4E" unitRef="usd">314106000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-75A80E1C82AA51AB867CD7FE273C00ED" unitRef="usd">6886000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-AF6C9C71AFE42DAE0024A7188D4A34BA" unitRef="usd">14437000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-36FD0DBD32CA5F83BCED7552BC4221BF" unitRef="usd">226058000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2017Q4" decimals="-3" id="Fact-DA6B722E75B35A769C3AA40D68B24D8F" unitRef="usd">297961000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-0245667A04485C234F16A7E6FB97B753" unitRef="usd">10608000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-431CAC06DD9655E9A61BB32D56117522" unitRef="usd">59203000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-8413103CD56E55DE9973FE1CD4498213" unitRef="usd">47395000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-AADD8A4707A451F894535E92D4EB92DC" unitRef="usd">8805000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtMember" decimals="-3" id="Fact-28C6B6E2DF359A892617A7E6EC54B78E" unitRef="usd">21579000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-C4008EAA4C155B39982B972D22630F66" unitRef="usd">150371000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2018Q3" decimals="-3" id="Fact-1B29CCCD47F5522BAF3329AA8179C03C" unitRef="usd">420016000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-D8EC4F3F83F3153B5CB4A7E712240C9B" unitRef="usd">2969000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-756771E840DB502EA13F435008F6ECB4" unitRef="usd">71438000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-8EFF869212075EA98FEBF8BC8D7B2674" unitRef="usd">138099000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-328EF8C2F71555AFA0826F7E5528F3C4" unitRef="usd">6044000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtMember" decimals="-3" id="Fact-C271129C67908840A06FA7E48FDE5848" unitRef="usd">8119000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-268D8F3D46575707B0B5E8B88CBD8366" unitRef="usd">193347000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-8BA7FBCE9196568A85C45C90051AEDD4" unitRef="usd">14890000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-3660C6605F3450468267249E2D67F729" unitRef="usd">71727000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-C76AA5066B71527B877FEF7679792727" unitRef="usd">296014000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-DC93BC0E9AE453CCB2C1355E55B13633" unitRef="usd">4204000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-C5E4D4B11B6153D691306C732278C4E5" unitRef="usd">13147000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="FI2017Q4_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-4587A70E15B0754C7805A7E7F1F986EB" unitRef="usd">23459000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_cgnx_AgencyBondsMember" decimals="-3" id="Fact-6EFD8D7A1F4951AF95891424C635625A" unitRef="usd">5940000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_AssetBackedSecuritiesMember" decimals="-3" id="Fact-13D282CB37765D00936B889844EC4C06" unitRef="usd">60111000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_CorporateBondSecuritiesMember" decimals="-3" id="Fact-834C0D2D5A085E3B95199DD558CA4229" unitRef="usd">176007000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_MunicipalBondsMember" decimals="-3" id="Fact-6051BFE6273F5873A0380B358117C574" unitRef="usd">842000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_SovereignDebtSecuritiesMember" decimals="-3" id="Fact-3D547C64620D5C64B47E33A878F2503E" unitRef="usd">6318000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
	<us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="FI2018Q3_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_us-gaap_USTreasurySecuritiesMember" decimals="-3" id="Fact-ECDD4A59C6190B5A4641A7E7CC9A6419" unitRef="usd">32711000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
	<us-gaap:AvailableForSaleSecuritiesGrossRealizedGains contextRef="FD2017Q3QTD" decimals="0" id="Fact-17FDFD1FB474592588066D8E18A45DDB" unitRef="usd">306000</us-gaap:AvailableForSaleSecuritiesGrossRealizedGains>
	<us-gaap:AvailableForSaleSecuritiesGrossRealizedGains contextRef="FD2017Q3YTD" decimals="0" id="Fact-D8397CAC745E5B029E50F54B4FF3005B" unitRef="usd">449000</us-gaap:AvailableForSaleSecuritiesGrossRealizedGains>
	<us-gaap:AvailableForSaleSecuritiesGrossRealizedGains contextRef="FD2018Q3QTD" decimals="0" id="Fact-A8705A7147A6502893887E9F690B538B" unitRef="usd">283000</us-gaap:AvailableForSaleSecuritiesGrossRealizedGains>
	<us-gaap:AvailableForSaleSecuritiesGrossRealizedGains contextRef="FD2018Q3YTD" decimals="0" id="Fact-9E829C513CE3544BB989F15AA7C74443" unitRef="usd">646000</us-gaap:AvailableForSaleSecuritiesGrossRealizedGains>
	<us-gaap:AvailableForSaleSecuritiesGrossRealizedLosses contextRef="FD2017Q3QTD" decimals="0" id="Fact-885776B72A5A50288B16E67A592DE3AE" unitRef="usd">43000</us-gaap:AvailableForSaleSecuritiesGrossRealizedLosses>
	<us-gaap:AvailableForSaleSecuritiesGrossRealizedLosses contextRef="FD2017Q3YTD" decimals="0" id="Fact-7BBD12EFCFAC52B09D08216473C196C4" unitRef="usd">79000</us-gaap:AvailableForSaleSecuritiesGrossRealizedLosses>
	<us-gaap:AvailableForSaleSecuritiesGrossRealizedLosses contextRef="FD2018Q3QTD" decimals="-3" id="Fact-6B9CA295B15B50AC92B168C35F6C691A" unitRef="usd">17000</us-gaap:AvailableForSaleSecuritiesGrossRealizedLosses>
	<us-gaap:AvailableForSaleSecuritiesGrossRealizedLosses contextRef="FD2018Q3YTD" decimals="0" id="Fact-FDA79D17DCFD5C0CA225B03C3594DCDA" unitRef="usd">111000</us-gaap:AvailableForSaleSecuritiesGrossRealizedLosses>
	<us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1 contextRef="FD2017Q3YTD" decimals="-3" id="Fact-5692E433A29253789C604B01FDEA58C8" unitRef="usd">88000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
	<us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1 contextRef="FD2018Q3YTD" decimals="-3" id="Fact-A7B4308BDBFB5D609017537D7C7193AD" unitRef="usd">-50000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
	<us-gaap:BusinessCombinationContingentConsiderationLiability contextRef="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" decimals="-3" id="Fact-15591E6C592C5AFD81400D31032DF5CF" unitRef="usd">2507000</us-gaap:BusinessCombinationContingentConsiderationLiability>
	<us-gaap:CapitalizedContractCostGross contextRef="FI2017Q4" decimals="-3" id="Fact-DC752ACFC01A0C887A41AD8DCC9494C5" unitRef="usd">3230000</us-gaap:CapitalizedContractCostGross>
	<us-gaap:CapitalizedContractCostGross contextRef="FI2018Q3" decimals="-3" id="Fact-BBF5E07FBB997F55E381AD8DCC98769A" unitRef="usd">6811000</us-gaap:CapitalizedContractCostGross>
	<us-gaap:Cash contextRef="FI2017Q4" decimals="-3" id="Fact-A8000633DBFC551582C69CF145997319" unitRef="usd">97951000</us-gaap:Cash>
	<us-gaap:Cash contextRef="FI2018Q3" decimals="-3" id="Fact-E02B2BABF63E56088D22055B76589583" unitRef="usd">104654000</us-gaap:Cash>
	<us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="FI2016Q4" decimals="-3" id="Fact-4BDA874B622B5056B2DA194B1C445E58" unitRef="usd">79641000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
	<us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="FI2017Q3" decimals="-3" id="Fact-F159383E8D8F5D2AA83462138A10C307" unitRef="usd">111349000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
	<us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="FI2017Q4" decimals="-3" id="Fact-E4F6EFAE9F0E5706AB6DA5F8F86BB10B" unitRef="usd">106582000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
	<us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="FI2018Q3" decimals="-3" id="Fact-5C3ACD1BE2E6570284842F65F9A02249" unitRef="usd">107371000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
	<us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease contextRef="FD2017Q3YTD" decimals="-3" id="Fact-D9629C22C39951BBB4D642E39F6F69FA" unitRef="usd">31708000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
	<us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease contextRef="FD2018Q3YTD" decimals="-3" id="Fact-D1795801A2545F74ACEC1106FE6DD52E" unitRef="usd">789000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
	<us-gaap:CommonStockDividendsPerShareCashPaid contextRef="FD2017Q3QTD" decimals="INF" id="Fact-C4A59D6DEFDC5A86842C3B958CFDDDFA" unitRef="usdPerShare">0.0425</us-gaap:CommonStockDividendsPerShareCashPaid>
	<us-gaap:CommonStockDividendsPerShareCashPaid contextRef="FD2017Q3YTD" decimals="INF" id="Fact-7D767A74EBD95B21802CB095FF5AD8F4" unitRef="usdPerShare">0.1225</us-gaap:CommonStockDividendsPerShareCashPaid>
	<us-gaap:CommonStockDividendsPerShareCashPaid contextRef="FD2018Q3QTD" decimals="INF" id="Fact-5E8F5EAE9C9F5AF1968154EF872B35B3" unitRef="usdPerShare">0.0450</us-gaap:CommonStockDividendsPerShareCashPaid>
	<us-gaap:CommonStockDividendsPerShareCashPaid contextRef="FD2018Q3YTD" decimals="INF" id="Fact-6120F6A4E55D53EE9ACB3F81A2C116BD" unitRef="usdPerShare">0.1350</us-gaap:CommonStockDividendsPerShareCashPaid>
	<us-gaap:CommonStockParOrStatedValuePerShare contextRef="FI2017Q4" decimals="INF" id="Fact-4815DE37509959369B395042056FE5A6" unitRef="usdPerShare">0.002</us-gaap:CommonStockParOrStatedValuePerShare>
	<us-gaap:CommonStockParOrStatedValuePerShare contextRef="FI2018Q3" decimals="INF" id="Fact-1CC5CCA5633B51218C1B744AF82B1C93" unitRef="usdPerShare">0.002</us-gaap:CommonStockParOrStatedValuePerShare>
	<us-gaap:CommonStockSharesAuthorized contextRef="FI2017Q4" decimals="INF" id="Fact-CBD61DF86A3E57AB8CACC55889460F8A" unitRef="shares">200000000</us-gaap:CommonStockSharesAuthorized>
	<us-gaap:CommonStockSharesAuthorized contextRef="FI2018Q3" decimals="INF" id="Fact-3525581E064257BAA3A9CF3A1E417CAF" unitRef="shares">300000000</us-gaap:CommonStockSharesAuthorized>
	<us-gaap:CommonStockSharesIssued contextRef="FI2017Q4" decimals="-3" id="Fact-624A3E6337BC5643ADFA5BB454122678" unitRef="shares">173507000</us-gaap:CommonStockSharesIssued>
	<us-gaap:CommonStockSharesIssued contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" decimals="-3" id="Fact-8A451DCFC9C95B2396FFC33E1E99B4C6" unitRef="shares">173507000</us-gaap:CommonStockSharesIssued>
	<us-gaap:CommonStockSharesIssued contextRef="FI2018Q3" decimals="-3" id="Fact-5A290F26855B5CB5BDC50CDE1D24463B" unitRef="shares">172032000</us-gaap:CommonStockSharesIssued>
	<us-gaap:CommonStockSharesIssued contextRef="FI2018Q3_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" decimals="-3" id="Fact-62361DFCEDFE5AA8997FF35A1C2FEECB" unitRef="shares">172191000</us-gaap:CommonStockSharesIssued>
	<us-gaap:CommonStockValueOutstanding contextRef="FI2017Q4" decimals="-3" id="Fact-2008AF29C0185A0E99072D4A654682A4" unitRef="usd">347000</us-gaap:CommonStockValueOutstanding>
	<us-gaap:CommonStockValueOutstanding contextRef="FI2018Q3" decimals="-3" id="Fact-520AF92222FA55C6A1E8E110BDF1C8DC" unitRef="usd">345000</us-gaap:CommonStockValueOutstanding>
	<us-gaap:ComprehensiveIncomeNetOfTax contextRef="FD2017Q3QTD" decimals="-3" id="Fact-3C74EF2D31DE52E39142FCE33D722F5A" unitRef="usd">108342000</us-gaap:ComprehensiveIncomeNetOfTax>
	<us-gaap:ComprehensiveIncomeNetOfTax contextRef="FD2017Q3YTD" decimals="-3" id="Fact-AE0A01FD934755EC9F430008FBAD0812" unitRef="usd">223786000</us-gaap:ComprehensiveIncomeNetOfTax>
	<us-gaap:ComprehensiveIncomeNetOfTax contextRef="FD2018Q3QTD" decimals="-3" id="Fact-FC7C2880761C5FA69B0C91B86FFD79A8" unitRef="usd">78811000</us-gaap:ComprehensiveIncomeNetOfTax>
	<us-gaap:ComprehensiveIncomeNetOfTax contextRef="FD2018Q3YTD" decimals="-3" id="Fact-061A6D59F66D56FCA075AC727641A775" unitRef="usd">168056000</us-gaap:ComprehensiveIncomeNetOfTax>
	<us-gaap:CostOfGoodsAndServicesSold contextRef="FD2017Q3QTD" decimals="-3" id="Fact-05A5DBC00D4C5745BC2C07DF393752BE" unitRef="usd">68061000</us-gaap:CostOfGoodsAndServicesSold>
	<us-gaap:CostOfGoodsAndServicesSold contextRef="FD2017Q3QTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-97DE19B552E153AC1A2AAD83AB374D81" unitRef="usd">5701000</us-gaap:CostOfGoodsAndServicesSold>
	<us-gaap:CostOfGoodsAndServicesSold contextRef="FD2017Q3QTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-48519E07C9AD41D43C5CAD83AB05D243" unitRef="usd">62360000</us-gaap:CostOfGoodsAndServicesSold>
	<us-gaap:CostOfGoodsAndServicesSold contextRef="FD2017Q3YTD" decimals="-3" id="Fact-D1C6ED9AD5ED5B6E9118665911DD6623" unitRef="usd">142757000</us-gaap:CostOfGoodsAndServicesSold>
	<us-gaap:CostOfGoodsAndServicesSold contextRef="FD2017Q3YTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-139F02A10763A7CE58D7AD83AAE3994B" unitRef="usd">14701000</us-gaap:CostOfGoodsAndServicesSold>
	<us-gaap:CostOfGoodsAndServicesSold contextRef="FD2017Q3YTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-1B3FA4F7449483C04C9AAD83AAC0AD29" unitRef="usd">128056000</us-gaap:CostOfGoodsAndServicesSold>
	<us-gaap:CostOfGoodsAndServicesSold contextRef="FD2018Q3QTD" decimals="-3" id="Fact-980F1117004851E6BB6B54C89E86935F" unitRef="usd">58860000</us-gaap:CostOfGoodsAndServicesSold>
	<us-gaap:CostOfGoodsAndServicesSold contextRef="FD2018Q3YTD" decimals="-3" id="Fact-72AA12B03A0A5F16B62B35D7A3A384D9" unitRef="usd">153227000</us-gaap:CostOfGoodsAndServicesSold>
	<us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption contextRef="FI2017Q4" decimals="-3" id="Fact-81659BB10359587892588F6D6882C778" unitRef="usd">-5961000</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
	<us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" decimals="-3" id="Fact-CDE1F65BECCE5403969A7398DF02F2FC" unitRef="usd">-5961000</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
	<us-gaap:CumulativeEffectOnRetainedEarningsNetOfTax1 contextRef="D2018Q1_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201616Member" decimals="-3" id="Fact-EADD8ECF0A5C5C9E9FA5EDDB142F9F66" unitRef="usd">5961000</us-gaap:CumulativeEffectOnRetainedEarningsNetOfTax1>
	<us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="FI2017Q4" decimals="-3" id="Fact-C00FE76D2D7E512D9FEB551228EA03D3" unitRef="usd">312000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
	<us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="FI2018Q3" decimals="-3" id="Fact-6F32E36EFBB05783A120FB55747E0551" unitRef="usd">372000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
	<us-gaap:DeferredRevenue contextRef="FI2017Q4" decimals="-3" id="Fact-B1C320553F6C488C332AAD86D5F81D28" unitRef="usd">9420000</us-gaap:DeferredRevenue>
	<us-gaap:DeferredRevenue contextRef="FI2018Q3" decimals="-3" id="Fact-6F607ADB04D235F405BCAD86D5DAF063" unitRef="usd">13252000</us-gaap:DeferredRevenue>
	<us-gaap:DeferredRevenueAdditions contextRef="FD2018Q3YTD" decimals="-3" id="Fact-494B0D223DC0B0842906AD87242B2571" unitRef="usd">55408000</us-gaap:DeferredRevenueAdditions>
	<us-gaap:DeferredRevenueAndCreditsCurrent contextRef="FI2017Q4" decimals="-3" id="Fact-F793190B2B0857C082EA5272840735EB" unitRef="usd">9420000</us-gaap:DeferredRevenueAndCreditsCurrent>
	<us-gaap:DeferredRevenueAndCreditsCurrent contextRef="FI2017Q4_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-F99EA183BF9D590A68A4AD85071CFF57" unitRef="usd">-549000</us-gaap:DeferredRevenueAndCreditsCurrent>
	<us-gaap:DeferredRevenueAndCreditsCurrent contextRef="FI2017Q4_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-CE00860076A89D9A7C82AD85070A064F" unitRef="usd">9969000</us-gaap:DeferredRevenueAndCreditsCurrent>
	<us-gaap:DeferredRevenueAndCreditsCurrent contextRef="FI2018Q3" decimals="-3" id="Fact-981D48C2FB0957D5B0E4E71758D3A6E0" unitRef="usd">13252000</us-gaap:DeferredRevenueAndCreditsCurrent>
	<us-gaap:DeferredRevenueRevenueRecognized1 contextRef="FD2018Q3YTD" decimals="-3" id="Fact-D45F866768C215EF557AAD873EBC773A" unitRef="usd">50590000</us-gaap:DeferredRevenueRevenueRecognized1>
	<us-gaap:DeferredTaxAssetsNetNoncurrent contextRef="FI2017Q4" decimals="-3" id="Fact-8F7F62140040592B9F562BA69858C3F9" unitRef="usd">27385000</us-gaap:DeferredTaxAssetsNetNoncurrent>
	<us-gaap:DeferredTaxAssetsNetNoncurrent contextRef="FI2018Q3" decimals="-3" id="Fact-7C98B6D875C5574190DC27BB0677E7F8" unitRef="usd">27376000</us-gaap:DeferredTaxAssetsNetNoncurrent>
	<us-gaap:Depreciation contextRef="FD2017Q3YTD" decimals="-3" id="Fact-AA5A2B036E0756ADAF26B7E985F24FFF" unitRef="usd">9811000</us-gaap:Depreciation>
	<us-gaap:Depreciation contextRef="FD2018Q3YTD" decimals="-3" id="Fact-BD10CF6CFBA751F58C05C0FA924A0853" unitRef="usd">13474000</us-gaap:Depreciation>
	<us-gaap:DerivativeAssetCollateralObligationToReturnCashOffset contextRef="FI2017Q4" decimals="-3" id="Fact-075792AD38B851DD843254C831C2DF03" unitRef="usd">0</us-gaap:DerivativeAssetCollateralObligationToReturnCashOffset>
	<us-gaap:DerivativeAssetCollateralObligationToReturnCashOffset contextRef="FI2018Q3" decimals="-3" id="Fact-BCBF0B7BADCB5A15B33116801DE7E33B" unitRef="usd">0</us-gaap:DerivativeAssetCollateralObligationToReturnCashOffset>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_CAD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-232AB72BA92A54668215D74D0E778C54" unitRef="usd">0</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_CAD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-9BEBE59094055A7498A81F0C213348AE" unitRef="cad">0</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_CHF_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-33078D5CB6CEA1235EBEAB04E841B68D" unitRef="usd">1401000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_CHF_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-C791C753DA996925DC25AB0485971D61" unitRef="twd">1365000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_EUR_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-128F9061A60354C5A63BA9CD97EF30B5" unitRef="usd">0</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_EUR_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-780B283D2C93587F9890F04E81F9D0D2" unitRef="eur">0</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_GBP_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-9449364D6A2510236BA0A7DF323F3375" unitRef="usd">2232000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_GBP_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-DAF5DBB164B249EFC131A7DE6C3F2073" unitRef="iso4217_JPY">1650000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_HUF_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-07F58871616336497C22A7E1468F8744" unitRef="usd">2110000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_HUF_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-109BB19F9AE1158E172AA7E0EA6FB776" unitRef="iso4217_JPY">545000000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_JPY_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-91F7DAAF51C35AAFB5CABB9E4E044A9D" unitRef="iso4217_JPY">455000000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_JPY_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-AD16BACED9F95C8286F1086E59B363C6" unitRef="usd">4049000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_KRW_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-E9C09D3507A65F35B9B1E7E60262DCD0" unitRef="usd">1708000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_KRW_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-FD8577059A8B55CFA3F6C4410AC6FA17" unitRef="iso4217_KRW">1825000000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_SGD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-34C86BC1C9B75BD8AA8A595934D3AAA2" unitRef="usd">0</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_SGD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-D5E20C50FEB85932841244AB686EB81E" unitRef="sgd">0</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_TWD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-2DCCD6BBCBD75F53B9208DFD0DC5C48D" unitRef="usd">1278000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2017Q4_us-gaap_CurrencyAxis_currency_TWD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-165ED16424235229A16864EE12903118" unitRef="twd">37725000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_CAD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-AE95A2BA68AA50EBA6A7FDCC4F65CD73" unitRef="usd">616000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_CAD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-E38F380B300758C69580409E4951D3A2" unitRef="cad">800000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_CHF_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-954CFDCABB2B279DBE58AB0397A95E1F" unitRef="sgd">0</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_CHF_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-5FD52683DEA086E2A7A9AB040854F371" unitRef="usd">0</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_EUR_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-E68F99EEB91D596DAC1DA68BC462652A" unitRef="usd">22602000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_EUR_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-4A8A2F1C2A6B5909BE35D0010A485B9A" unitRef="eur">19500000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_GBP_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-9EAF7F3A3C9362883684A7DD73D6BDCD" unitRef="usd">2742000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_GBP_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-0076A0A9B4C1962398F8A7DC72532887" unitRef="iso4217_JPY">2100000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_HUF_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-A3B2B50250A636E14903A7E07B41B098" unitRef="usd">2513000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_HUF_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-2F2A1C156701E4E3509DA7E02AFB5872" unitRef="iso4217_JPY">700000000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_JPY_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-4A0D34BCF22B585199F939DF0AEB7C5B" unitRef="usd">4018000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_JPY_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-D9188C8078B357A99647D27843D77D5F" unitRef="iso4217_JPY">455000000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_KRW_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-E310CB49B4EE5BB8ADCCD9DB4E7738D7" unitRef="usd">1847000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_KRW_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-AA06276B9D925AEDAC78912FAE231E58" unitRef="iso4217_KRW">2050000000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_SGD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-038AC83E465D58DDB9C4000392D84747" unitRef="sgd">760000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_SGD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-6B2328395DFA5037B10CE4CB30D20BE4" unitRef="usd">557000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_TWD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-AEFBAAA8268A5EF8B3691F09DA376571" unitRef="usd">1615000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssetNotionalAmount contextRef="FI2018Q3_us-gaap_CurrencyAxis_currency_TWD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-C9B81702B07554D3A637C6A053FCA059" unitRef="twd">49000000</us-gaap:DerivativeAssetNotionalAmount>
	<us-gaap:DerivativeAssets contextRef="FI2017Q4" decimals="-3" id="Fact-3EA2B5B148B65690BC435A774DBA4BDE" unitRef="usd">16000</us-gaap:DerivativeAssets>
	<us-gaap:DerivativeAssets contextRef="FI2017Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-A84B30FA60BB58AB8A86EB3A30F64CE4" unitRef="usd">16000</us-gaap:DerivativeAssets>
	<us-gaap:DerivativeAssets contextRef="FI2018Q3" decimals="-3" id="Fact-448DBF4FC4565DF7B8A9223FAE2FEADC" unitRef="usd">21000</us-gaap:DerivativeAssets>
	<us-gaap:DerivativeAssets contextRef="FI2018Q3_us-gaap_BalanceSheetLocationAxis_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-7AF0D76AF05A5097BE6F7282A282E05B" unitRef="usd">21000</us-gaap:DerivativeAssets>
	<us-gaap:DerivativeFairValueOfDerivativeAsset contextRef="FI2017Q4" decimals="-3" id="Fact-488AABBAF348546D8ADBAC82CC87A94A" unitRef="usd">16000</us-gaap:DerivativeFairValueOfDerivativeAsset>
	<us-gaap:DerivativeFairValueOfDerivativeAsset contextRef="FI2018Q3" decimals="-3" id="Fact-DA66F7580D075058A0A2313C175BAE4C" unitRef="usd">21000</us-gaap:DerivativeFairValueOfDerivativeAsset>
	<us-gaap:DerivativeFairValueOfDerivativeLiability contextRef="FI2017Q4" decimals="-3" id="Fact-977B9BDAF6015D2FB46D0079EBD51588" unitRef="usd">13000</us-gaap:DerivativeFairValueOfDerivativeLiability>
	<us-gaap:DerivativeFairValueOfDerivativeLiability contextRef="FI2018Q3" decimals="-3" id="Fact-FE870D07BF275B9AB75E84DE9583D1AA" unitRef="usd">91000</us-gaap:DerivativeFairValueOfDerivativeLiability>
	<us-gaap:DerivativeGainLossOnDerivativeNet contextRef="FD2017Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember" decimals="-3" id="Fact-E445982E7B8E50E4B5B4A73DC187957C" unitRef="usd">43000</us-gaap:DerivativeGainLossOnDerivativeNet>
	<us-gaap:DerivativeGainLossOnDerivativeNet contextRef="FD2017Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember" decimals="-3" id="Fact-B8115688E2B95C31B2E218E0CEBD5832" unitRef="usd">139000</us-gaap:DerivativeGainLossOnDerivativeNet>
	<us-gaap:DerivativeGainLossOnDerivativeNet contextRef="FD2018Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember" decimals="-3" id="Fact-B2A00160EB8F56A897CBEB4082550F15" unitRef="usd">299000</us-gaap:DerivativeGainLossOnDerivativeNet>
	<us-gaap:DerivativeGainLossOnDerivativeNet contextRef="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember" decimals="-3" id="Fact-1D79F0A8CF3D5D7BB19DAAD40A1EF779" unitRef="usd">-366000</us-gaap:DerivativeGainLossOnDerivativeNet>
	<us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet contextRef="FD2017Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember" decimals="-3" id="Fact-0590D8BB534B59CA82110DAA9B114036" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet contextRef="FD2017Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember" decimals="-3" id="Fact-0F8162DC17BA550B9E6A723BC00387C6" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet contextRef="FD2017Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueGoodsNetMember" decimals="-3" id="Fact-E9430652006754E592FC5B8792FA5ECB" unitRef="usd">56000</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet contextRef="FD2017Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember" decimals="-3" id="Fact-7BF083CB59ED51B78CB9C896860C35B2" unitRef="usd">8000</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet contextRef="FD2017Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember" decimals="-3" id="Fact-F3A8EBD1F4B65404AF3BA787C3D87551" unitRef="usd">3000</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet contextRef="FD2017Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueGoodsNetMember" decimals="-3" id="Fact-819752B039A754D2B6B05CFA8D8627AE" unitRef="usd">10000</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet contextRef="FD2018Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember" decimals="-3" id="Fact-94473030218655918941C5DF94F07FC7" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet contextRef="FD2018Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember" decimals="-3" id="Fact-7AAD67B0FCDC585391A4C8E02A04BCB2" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet contextRef="FD2018Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueGoodsNetMember" decimals="-3" id="Fact-FD27992776F75EA492AC7B360DB9519D" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet contextRef="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember" decimals="-3" id="Fact-A6F609CF490458EC87A70DB4DB27748D" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet contextRef="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember" decimals="-3" id="Fact-867DC3AF27745D2AB4665660F0727811" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet contextRef="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueGoodsNetMember" decimals="-3" id="Fact-130B6872949A517EBD8A3FEBC725A998" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet contextRef="FD2017Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember" decimals="-3" id="Fact-37C58EF13C5A560B92F61D7F3B062534" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet>
	<us-gaap:DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet contextRef="FD2017Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember" decimals="-3" id="Fact-31BCC8CA1C9959D89E14B4F346D1E7DC" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet>
	<us-gaap:DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet contextRef="FD2018Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember" decimals="-3" id="Fact-E90FDC43EDA156D9BEDBBEA04D5B2134" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet>
	<us-gaap:DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet contextRef="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_ForeignCurrencyGainLossMember" decimals="-3" id="Fact-ECB4C50F77705661918E9A3C0DDFC3A6" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet>
	<us-gaap:DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet contextRef="FD2017Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CashFlowHedgingMember" decimals="-3" id="Fact-BC197AB694E95E4188E4BFED4B0FB93C" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet contextRef="FD2017Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CashFlowHedgingMember" decimals="-3" id="Fact-36CEEDF0CA3B563D89486584B910D2E5" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet contextRef="FD2018Q3QTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CashFlowHedgingMember" decimals="-3" id="Fact-950F9C8C33715392825D94036F966DA8" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet>
	<us-gaap:DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet contextRef="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CashFlowHedgingMember" decimals="-3" id="Fact-6CCE83F95AF253AA8DEE47173D19173E" unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet>
	<us-gaap:DerivativeLiabilities contextRef="FI2017Q4" decimals="-3" id="Fact-2BA1CA97AC5655A38877442ADC426B9C" unitRef="usd">13000</us-gaap:DerivativeLiabilities>
	<us-gaap:DerivativeLiabilities contextRef="FI2017Q4_us-gaap_BalanceSheetLocationAxis_cgnx_AccruedExpensesMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-1D114619AD9B57DE9F0CAA5D131C1675" unitRef="usd">13000</us-gaap:DerivativeLiabilities>
	<us-gaap:DerivativeLiabilities contextRef="FI2018Q3" decimals="-3" id="Fact-41E569420659553EBFB0445F08CA5916" unitRef="usd">91000</us-gaap:DerivativeLiabilities>
	<us-gaap:DerivativeLiabilities contextRef="FI2018Q3_us-gaap_BalanceSheetLocationAxis_cgnx_AccruedExpensesMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" decimals="-3" id="Fact-99BBBBD4F73F50A5831A7B5C2C96CA6B" unitRef="usd">91000</us-gaap:DerivativeLiabilities>
	<us-gaap:DerivativeLiabilityCollateralRightToReclaimCashOffset contextRef="FI2017Q4" decimals="-3" id="Fact-CED710E008005AB59C638B98FA4ADA0B" unitRef="usd">0</us-gaap:DerivativeLiabilityCollateralRightToReclaimCashOffset>
	<us-gaap:DerivativeLiabilityCollateralRightToReclaimCashOffset contextRef="FI2018Q3" decimals="-3" id="Fact-74E8E9706D4B5DD6A6F99555DDF3BE2B" unitRef="usd">0</us-gaap:DerivativeLiabilityCollateralRightToReclaimCashOffset>
	<us-gaap:DerivativeNumberOfInstrumentsHeld contextRef="FI2018Q3" decimals="INF" id="Fact-E0D66E777FB35006B5CA8F99A8AE5A9E" unitRef="Category">2</us-gaap:DerivativeNumberOfInstrumentsHeld>
	<us-gaap:DividendPayableDateToBePaidDayMonthAndYear contextRef="D2018Q4_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember" id="Fact-890AFD6DC2C95B67869933515DF4B5E1">2018-11-30</us-gaap:DividendPayableDateToBePaidDayMonthAndYear>
	<us-gaap:Dividends contextRef="D2018Q4_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember" decimals="INF" id="Fact-C1F430F6760F5AFDA42A8E2DB64EFCFD" unitRef="usd">0.05</us-gaap:Dividends>
	<us-gaap:DividendsCash contextRef="FD2018Q3YTD" decimals="-3" id="Fact-49B0F2FB9EFA556F95F10C2D98366AD5" unitRef="usd">23283000</us-gaap:DividendsCash>
	<us-gaap:DividendsCash contextRef="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" decimals="-3" id="Fact-A4F243422B2C5A2FAD1DE084F168CC83" unitRef="usd">23283000</us-gaap:DividendsCash>
	<us-gaap:DividendsPayableDateOfRecordDayMonthAndYear contextRef="D2018Q4_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember" id="Fact-D401E3C119935247A4AB511ED9CE8C3E">2018-11-16</us-gaap:DividendsPayableDateOfRecordDayMonthAndYear>
	<us-gaap:EarningsPerShareDiluted contextRef="FD2017Q3QTD" decimals="2" id="Fact-71C63BCD45EB517DAFCBDB0F195C026D" unitRef="usdPerShare">0.57</us-gaap:EarningsPerShareDiluted>
	<us-gaap:EarningsPerShareDiluted contextRef="FD2017Q3QTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="2" id="Fact-5DF467E8A75A9940CF7BAD84849C50FC" unitRef="usdPerShare">0.00</us-gaap:EarningsPerShareDiluted>
	<us-gaap:EarningsPerShareDiluted contextRef="FD2017Q3QTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="2" id="Fact-0B3CD18E7FC32F27C6CEAD8484CAAD19" unitRef="usdPerShare">0.57</us-gaap:EarningsPerShareDiluted>
	<us-gaap:EarningsPerShareDiluted contextRef="FD2017Q3YTD" decimals="2" id="Fact-6D141EB4F63A52AA970424E480B00BE0" unitRef="usdPerShare">1.14</us-gaap:EarningsPerShareDiluted>
	<us-gaap:EarningsPerShareDiluted contextRef="FD2017Q3YTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="2" id="Fact-D64C6F4782C2155CC7B2AD84848E90C1" unitRef="usdPerShare">0.00</us-gaap:EarningsPerShareDiluted>
	<us-gaap:EarningsPerShareDiluted contextRef="FD2017Q3YTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="2" id="Fact-D8A027417AA522C74064AD8484AACFA3" unitRef="usdPerShare">1.14</us-gaap:EarningsPerShareDiluted>
	<us-gaap:EarningsPerShareDiluted contextRef="FD2018Q3QTD" decimals="2" id="Fact-6B8A875E37D95E6EA53D083F74C7B93E" unitRef="usdPerShare">0.45</us-gaap:EarningsPerShareDiluted>
	<us-gaap:EarningsPerShareDiluted contextRef="FD2018Q3YTD" decimals="2" id="Fact-9AF5BAAC519358F3B9B72815F4409290" unitRef="usdPerShare">0.98</us-gaap:EarningsPerShareDiluted>
	<us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents contextRef="FD2017Q3YTD" decimals="-3" id="Fact-F7D14320AE90507898945D82BFF1F502" unitRef="usd">1298000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
	<us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents contextRef="FD2018Q3YTD" decimals="-3" id="Fact-F6901794DCE95A2ABA3EB551B75A8DB3" unitRef="usd">-1956000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
	<us-gaap:EffectiveIncomeTaxRateContinuingOperations contextRef="FD2017Q3QTD" decimals="2" id="Fact-443E4657341B59BCA7CF44C0CFB3E94A" unitRef="number">0.09</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
	<us-gaap:EffectiveIncomeTaxRateContinuingOperations contextRef="FD2017Q3YTD" decimals="2" id="Fact-BB663F2F438E516881216AFB92FE74D2" unitRef="number">0.04</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
	<us-gaap:EffectiveIncomeTaxRateContinuingOperations contextRef="FD2018Q3QTD" decimals="2" id="Fact-4D6DEA5575FB5BF5A3BD824105B3C190" unitRef="number">0.01</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
	<us-gaap:EffectiveIncomeTaxRateContinuingOperations contextRef="FD2018Q3YTD" decimals="2" id="Fact-A8F84F4BD2B7518BBE31108A00D21E18" unitRef="number">0.06</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
	<us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="FD2017Q3QTD" decimals="INF" id="Fact-D5A563A7F55053A8B1C82816F631D9D9" unitRef="number">0.35</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
	<us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="FD2017Q3YTD" decimals="INF" id="Fact-CE592FC2404A52BBAEDFC177C7BFF5F5" unitRef="number">0.35</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
	<us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="FD2018Q3QTD" decimals="INF" id="Fact-1CBAE48751CB52609AC74EB1DC8164F0" unitRef="number">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
	<us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="FD2018Q3YTD" decimals="INF" id="Fact-07B1DF1FB564547AB58270D162D3CD7D" unitRef="number">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
	<us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="FD2018Q3YTD_us-gaap_IncomeTaxAuthorityAxis_us-gaap_DomesticCountryMember" decimals="INF" id="Fact-5F1EA7A38336559E9FD240B0A1173EC4" unitRef="number">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
	<us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="FD2018Q3YTD_us-gaap_IncomeTaxAuthorityAxis_us-gaap_ForeignCountryMember_us-gaap_IncomeTaxAuthorityNameAxis_us-gaap_RevenueCommissionersIrelandMember" decimals="INF" id="Fact-03F7A0D490305E9CA5F1BD073BE9F6A7" unitRef="number">0.125</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
	<us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="FD2018Q3YTD_us-gaap_IncomeTaxAuthorityAxis_us-gaap_ForeignCountryMember_us-gaap_IncomeTaxAuthorityNameAxis_us-gaap_StateAdministrationOfTaxationChinaMember" decimals="INF" id="Fact-7A5861E9CD955FDEBF25B2BEABD72FC6" unitRef="number">0.25</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
	<us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate contextRef="FD2017Q3QTD" decimals="2" id="Fact-B795087235D55545BA4ED542C7B3212A" unitRef="number">-0.02</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
	<us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate contextRef="FD2017Q3YTD" decimals="2" id="Fact-B2C4AA2A151158FFAF8FE145969E7D89" unitRef="number">-0.01</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
	<us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate contextRef="FD2018Q3QTD" decimals="2" id="Fact-2CEA20360A875A6C9D733014DEA59883" unitRef="number">-0.02</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
	<us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate contextRef="FD2018Q3YTD" decimals="2" id="Fact-C1A9AAD48A325CBDA3337B92876A2EB3" unitRef="number">-0.01</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
	<us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential contextRef="FD2017Q3QTD" decimals="2" id="Fact-82BFCEC229B55B7FB2A2A4E85F931A1D" unitRef="number">-0.18</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
	<us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential contextRef="FD2017Q3YTD" decimals="2" id="Fact-EC9973AD397352F2BCF95CACC3C14985" unitRef="number">-0.18</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
	<us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential contextRef="FD2018Q3QTD" decimals="2" id="Fact-AFFBAE3AA8FD58B691E3584B720020EC" unitRef="number">-0.07</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
	<us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential contextRef="FD2018Q3YTD" decimals="2" id="Fact-BD11F4A2028651398BD614F99A23A3FE" unitRef="number">-0.07</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
	<us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments contextRef="FD2017Q3QTD" decimals="2" id="Fact-91483DCFF594557A9E510E42EE4678B5" unitRef="number">0.01</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
	<us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments contextRef="FD2017Q3YTD" decimals="2" id="Fact-726A33F0A5335421A89D529C1C9BB881" unitRef="number">0.01</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
	<us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments contextRef="FD2018Q3QTD" decimals="2" id="Fact-045938DD128A5DD09D56694D923EF72C" unitRef="number">0.01</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
	<us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments contextRef="FD2018Q3YTD" decimals="2" id="Fact-507FAD0580EE51698C742700AB9D6C5A" unitRef="number">0.01</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
	<us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes contextRef="FD2017Q3QTD" decimals="2" id="Fact-2A2731C3830B5D319AB1B4FF61503563" unitRef="number">0.01</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
	<us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes contextRef="FD2017Q3YTD" decimals="2" id="Fact-8D78E1503A745566BA990B70C8B13BC0" unitRef="number">0.01</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
	<us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes contextRef="FD2018Q3QTD" decimals="2" id="Fact-861614C391D35FF190683CA5EF129D3D" unitRef="number">0.01</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
	<us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes contextRef="FD2018Q3YTD" decimals="2" id="Fact-D42B6B4FB0145ECC8EB8A67D95D48B94" unitRef="number">0.01</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
	<us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits contextRef="FD2017Q3QTD" decimals="2" id="Fact-28AD77C13F6F5A2F823FE23E764CB740" unitRef="number">0.01</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits>
	<us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits contextRef="FD2017Q3YTD" decimals="2" id="Fact-B3DBE5E4CC6F581087DD0D4CD103E010" unitRef="number">0.01</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits>
	<us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits contextRef="FD2018Q3QTD" decimals="2" id="Fact-E1F86F50D2DC53CF96378193E0693A7C" unitRef="number">0.00</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits>
	<us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits contextRef="FD2018Q3YTD" decimals="2" id="Fact-E71B07A3401A56BBA5389846C6C2D68F" unitRef="number">0.00</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCredits>
	<us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized contextRef="FI2018Q3" decimals="0" id="Fact-CC41743E5B4E5C49928A52CA3B64C344" unitRef="usd">50387000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
	<us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="FD2017Q3QTD" decimals="0" id="Fact-23994DD743A95361B0EECE7FED839DF3" unitRef="usd">2639000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
	<us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="FD2017Q3YTD" decimals="0" id="Fact-CF5B7BEC55635AC0844A8C3828853EEA" unitRef="usd">7661000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
	<us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="FD2018Q3QTD" decimals="0" id="Fact-76AA22639FC2503CB9811FCFFF8919B7" unitRef="usd">1654000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
	<us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="FD2018Q3YTD" decimals="0" id="Fact-E0D828F36F4C50D991D090BC059B1A3E" unitRef="usd">5608000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
	<us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue contextRef="FI2017Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" decimals="-3" id="Fact-238BB81DF52C5669A25657B81B782F0D" unitRef="usd">3557000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
	<us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue contextRef="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" decimals="-3" id="Fact-CCB7C78D2ED45364A7E02E372E0D68E7" unitRef="usd">2507000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
	<us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="FI2017Q4" decimals="-3" id="Fact-B34DB0A55EBC54918E42495118216437" unitRef="usd">47535000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
	<us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cgnx_CustomerContractsAndRelationshipsMember" decimals="-3" id="Fact-1663D3161EC45E62B6B2891EA804C69D" unitRef="usd">5202000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
	<us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember" decimals="-3" id="Fact-0A301E71174853389BCDE8FFF1FEFB60" unitRef="usd">4181000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
	<us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" decimals="-3" id="Fact-4111B38D5E3358849AA0B7815593C5D9" unitRef="usd">38060000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
	<us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OtherIntangibleAssetsMember" decimals="-3" id="Fact-9A2C932BC376501FB726CB0C58BBEA3A" unitRef="usd">92000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
	<us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="FI2018Q3" decimals="-3" id="Fact-B52BAB7A22B35A979B8DDDD5143559C6" unitRef="usd">49842000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
	<us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cgnx_CustomerContractsAndRelationshipsMember" decimals="-3" id="Fact-12E9645043885CB0BF7358A4A12AAEBE" unitRef="usd">5587000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
	<us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember" decimals="-3" id="Fact-F5F16BB2E2ED50AF9B739C067FC3EA7B" unitRef="usd">6010000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
	<us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" decimals="-3" id="Fact-8BBABD7CFC31553380DC2F6ECE8A36C3" unitRef="usd">38060000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
	<us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OtherIntangibleAssetsMember" decimals="-3" id="Fact-7B4C309723735D4DA3C48C2D4151884D" unitRef="usd">185000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
	<us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive contextRef="FI2018Q3" decimals="-3" id="Fact-6EB4977AF41154408B8A6C483EF7DF2B" unitRef="usd">530000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
	<us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths contextRef="FI2018Q3" decimals="-3" id="Fact-B88AE81E30325042854316A0359A9ADA" unitRef="usd">2701000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
	<us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear contextRef="FI2018Q3" decimals="-3" id="Fact-B8C7A7236FA35369934696F9988AFCDE" unitRef="usd">769000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear>
	<us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive contextRef="FI2018Q3" decimals="-3" id="Fact-1BD5E49CC70A5AC594AC3C5FF214BF21" unitRef="usd">989000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
	<us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour contextRef="FI2018Q3" decimals="-3" id="Fact-0E55AA03E22C5EA4896F5B12FF131B66" unitRef="usd">1691000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
	<us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree contextRef="FI2018Q3" decimals="-3" id="Fact-E420756058D451879A146974F14606A4" unitRef="usd">2017000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
	<us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo contextRef="FI2018Q3" decimals="-3" id="Fact-5B860DA7280754178D3D915DA81F3726" unitRef="usd">2185000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
	<us-gaap:FiniteLivedIntangibleAssetsGross contextRef="FI2017Q4" decimals="-3" id="Fact-61A1569203CD516AA6AA80103F0B8E74" unitRef="usd">60724000</us-gaap:FiniteLivedIntangibleAssetsGross>
	<us-gaap:FiniteLivedIntangibleAssetsGross contextRef="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cgnx_CustomerContractsAndRelationshipsMember" decimals="-3" id="Fact-CFB563A363E85A1CA3679068D65AA38B" unitRef="usd">8607000</us-gaap:FiniteLivedIntangibleAssetsGross>
	<us-gaap:FiniteLivedIntangibleAssetsGross contextRef="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember" decimals="-3" id="Fact-BC129B4427E45649ABD5259D6C411F8D" unitRef="usd">13687000</us-gaap:FiniteLivedIntangibleAssetsGross>
	<us-gaap:FiniteLivedIntangibleAssetsGross contextRef="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" decimals="-3" id="Fact-92303967BC86517393304174368DD43A" unitRef="usd">38060000</us-gaap:FiniteLivedIntangibleAssetsGross>
	<us-gaap:FiniteLivedIntangibleAssetsGross contextRef="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OtherIntangibleAssetsMember" decimals="-3" id="Fact-66315F457B17593BA4DA6320D90E386D" unitRef="usd">370000</us-gaap:FiniteLivedIntangibleAssetsGross>
	<us-gaap:FiniteLivedIntangibleAssetsGross contextRef="FI2018Q3" decimals="-3" id="Fact-993279161C385FC3B78D560C2487941E" unitRef="usd">60724000</us-gaap:FiniteLivedIntangibleAssetsGross>
	<us-gaap:FiniteLivedIntangibleAssetsGross contextRef="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cgnx_CustomerContractsAndRelationshipsMember" decimals="-3" id="Fact-BB14858FBE195B9A99DCF4FF670F3112" unitRef="usd">8607000</us-gaap:FiniteLivedIntangibleAssetsGross>
	<us-gaap:FiniteLivedIntangibleAssetsGross contextRef="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember" decimals="-3" id="Fact-7D3D8229E3B85EFE94C322C1206C2CC3" unitRef="usd">13687000</us-gaap:FiniteLivedIntangibleAssetsGross>
	<us-gaap:FiniteLivedIntangibleAssetsGross contextRef="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" decimals="-3" id="Fact-EA6579437AC658B78866923C817644C0" unitRef="usd">38060000</us-gaap:FiniteLivedIntangibleAssetsGross>
	<us-gaap:FiniteLivedIntangibleAssetsGross contextRef="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OtherIntangibleAssetsMember" decimals="-3" id="Fact-BF4DB332F16B58A48395F7DC88535B48" unitRef="usd">370000</us-gaap:FiniteLivedIntangibleAssetsGross>
	<us-gaap:FiniteLivedIntangibleAssetsNet contextRef="FI2017Q4" decimals="-3" id="Fact-56C9A55C7D9B5F4F86B8C716B2C60793" unitRef="usd">13189000</us-gaap:FiniteLivedIntangibleAssetsNet>
	<us-gaap:FiniteLivedIntangibleAssetsNet contextRef="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cgnx_CustomerContractsAndRelationshipsMember" decimals="-3" id="Fact-84DF2777699E5FAC905AA17DA775876D" unitRef="usd">3405000</us-gaap:FiniteLivedIntangibleAssetsNet>
	<us-gaap:FiniteLivedIntangibleAssetsNet contextRef="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember" decimals="-3" id="Fact-47F0CB8FE1055B47B850BD224A612958" unitRef="usd">9506000</us-gaap:FiniteLivedIntangibleAssetsNet>
	<us-gaap:FiniteLivedIntangibleAssetsNet contextRef="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" decimals="-3" id="Fact-24F5CA8C73F1507B94009E21E192F455" unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsNet>
	<us-gaap:FiniteLivedIntangibleAssetsNet contextRef="FI2017Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OtherIntangibleAssetsMember" decimals="-3" id="Fact-A1B937E2F73856D884492238E370C8D8" unitRef="usd">278000</us-gaap:FiniteLivedIntangibleAssetsNet>
	<us-gaap:FiniteLivedIntangibleAssetsNet contextRef="FI2018Q3" decimals="-3" id="Fact-BA28E5B1BE7A52E1A0AE60B3987EB142" unitRef="usd">10882000</us-gaap:FiniteLivedIntangibleAssetsNet>
	<us-gaap:FiniteLivedIntangibleAssetsNet contextRef="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cgnx_CustomerContractsAndRelationshipsMember" decimals="-3" id="Fact-ACB1CC4702075F0C8AD25F73A851706A" unitRef="usd">3020000</us-gaap:FiniteLivedIntangibleAssetsNet>
	<us-gaap:FiniteLivedIntangibleAssetsNet contextRef="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember" decimals="-3" id="Fact-6273BF624DFD5DD7846382EDA953299B" unitRef="usd">7677000</us-gaap:FiniteLivedIntangibleAssetsNet>
	<us-gaap:FiniteLivedIntangibleAssetsNet contextRef="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" decimals="-3" id="Fact-0907ACF86B085CB6B0FB20766AAC4526" unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsNet>
	<us-gaap:FiniteLivedIntangibleAssetsNet contextRef="FI2018Q3_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OtherIntangibleAssetsMember" decimals="-3" id="Fact-58724AA0B959549BA5873B75B372B06D" unitRef="usd">185000</us-gaap:FiniteLivedIntangibleAssetsNet>
	<us-gaap:ForeignCurrencyContractAssetFairValueDisclosure contextRef="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" decimals="-3" id="Fact-1D05E305D0EA55909CE0A4B678C309AB" unitRef="usd">0</us-gaap:ForeignCurrencyContractAssetFairValueDisclosure>
	<us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure contextRef="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" decimals="-3" id="Fact-920CD55C39895F49AD0DD8E8AD9B6FD3" unitRef="usd">91000</us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure>
	<us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="FD2017Q3QTD" decimals="-3" id="Fact-958044B8C9B758C8AE2C9026AAC6067C" unitRef="usd">-127000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
	<us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="FD2017Q3YTD" decimals="-3" id="Fact-CDB02FDA70705BE38573037E90DD4F48" unitRef="usd">-574000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
	<us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="FD2018Q3QTD" decimals="-3" id="Fact-E6D6D3D0D0805D269BD6D701F0CFABBB" unitRef="usd">-379000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
	<us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="FD2018Q3YTD" decimals="-3" id="Fact-7F9EB818A06855AC886350FA77D763D5" unitRef="usd">-708000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
	<us-gaap:GainLossOnSaleOfInvestments contextRef="FD2017Q3YTD" decimals="-3" id="Fact-9EEEB5A23E615E8193F0E87C1E4F0CD8" unitRef="usd">370000</us-gaap:GainLossOnSaleOfInvestments>
	<us-gaap:GainLossOnSaleOfInvestments contextRef="FD2018Q3YTD" decimals="-3" id="Fact-7A9CCCB977DC591096C1CDFC13173785" unitRef="usd">535000</us-gaap:GainLossOnSaleOfInvestments>
	<us-gaap:Goodwill contextRef="FI2017Q4" decimals="-3" id="Fact-640866DD090355D7B091DFDAE6D4C73D" unitRef="usd">113208000</us-gaap:Goodwill>
	<us-gaap:Goodwill contextRef="FI2018Q3" decimals="-3" id="Fact-EDED0246F6EF5CFABD478D9AFD39141B" unitRef="usd">113208000</us-gaap:Goodwill>
	<us-gaap:GrossProfit contextRef="FD2017Q3QTD" decimals="-3" id="Fact-0EA8FD2E590355699965EAAD43566591" unitRef="usd">197981000</us-gaap:GrossProfit>
	<us-gaap:GrossProfit contextRef="FD2017Q3QTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-FF6E32208CC7E58E8E75AD83C6FE9DD3" unitRef="usd">602000</us-gaap:GrossProfit>
	<us-gaap:GrossProfit contextRef="FD2017Q3QTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-408898364082B02404B8AD83C7CF3ACB" unitRef="usd">197379000</us-gaap:GrossProfit>
	<us-gaap:GrossProfit contextRef="FD2017Q3YTD" decimals="-3" id="Fact-575C4FBA2CE25E319AB9CB12C816FEC4" unitRef="usd">440404000</us-gaap:GrossProfit>
	<us-gaap:GrossProfit contextRef="FD2017Q3YTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-F45362103B9A57028B12AD83C73AD92E" unitRef="usd">875000</us-gaap:GrossProfit>
	<us-gaap:GrossProfit contextRef="FD2017Q3YTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-F0255A0203C33F0DEA2BAD83C84E458D" unitRef="usd">439529000</us-gaap:GrossProfit>
	<us-gaap:GrossProfit contextRef="FD2018Q3QTD" decimals="-3" id="Fact-9E530886039C537C92A3C6F264894783" unitRef="usd">173361000</us-gaap:GrossProfit>
	<us-gaap:GrossProfit contextRef="FD2018Q3YTD" decimals="-3" id="Fact-47E48547761756EEA9831A54965E3B06" unitRef="usd">459825000</us-gaap:GrossProfit>
	<us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments contextRef="FD2017Q3QTD" decimals="-3" id="Fact-34FA0F37736B51F9A7F9261BBCA04AEE" unitRef="usd">112752000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
	<us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments contextRef="FD2017Q3QTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-459CDF33811250027465AD841A848669" unitRef="usd">602000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
	<us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments contextRef="FD2017Q3QTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-0315B80EFB558F2FDA4EAD841C49562D" unitRef="usd">112150000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
	<us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments contextRef="FD2017Q3YTD" decimals="-3" id="Fact-A5A21E10B3295F4A8F8EB9281CCB6C16" unitRef="usd">213793000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
	<us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments contextRef="FD2017Q3YTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-F602D774F6BD4F3A94C7AD841B3314D4" unitRef="usd">875000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
	<us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments contextRef="FD2017Q3YTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-BC211108B9C5271D76DFAD841BB1F9DB" unitRef="usd">212918000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
	<us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments contextRef="FD2018Q3QTD" decimals="-3" id="Fact-FB2D280F1A365FB195ECCCBBB853052A" unitRef="usd">81273000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
	<us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments contextRef="FD2018Q3YTD" decimals="-3" id="Fact-EA57A6A59E605397BE7E3C6B8989603D" unitRef="usd">185825000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
	<us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare contextRef="FD2017Q3QTD" decimals="2" id="Fact-9E8C64C2D11753889AFBE2EFD574E9F4" unitRef="usdPerShare">0.59</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
	<us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare contextRef="FD2017Q3QTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="2" id="Fact-262BD528FF2107BD43C8AD846833000F" unitRef="usdPerShare">0.00</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
	<us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare contextRef="FD2017Q3QTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="2" id="Fact-0D47E35E43ACB56D861CAD84680405C7" unitRef="usdPerShare">0.59</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
	<us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare contextRef="FD2017Q3YTD" decimals="2" id="Fact-D8BE4320D6085D95A209742CBFE56AF4" unitRef="usdPerShare">1.18</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
	<us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare contextRef="FD2017Q3YTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="2" id="Fact-AFB703C6DD4B92AFE572AD8467C69CA9" unitRef="usdPerShare">0.00</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
	<us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare contextRef="FD2017Q3YTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="2" id="Fact-60059C2BD8CBA5726FFFAD8467AA887D" unitRef="usdPerShare">1.18</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
	<us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare contextRef="FD2018Q3QTD" decimals="2" id="Fact-8413905D7FFF5FC0B41191DB4F29D38E" unitRef="usdPerShare">0.47</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
	<us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare contextRef="FD2018Q3YTD" decimals="2" id="Fact-1B99D78EC3095BEEB3E9F45E5B2E913C" unitRef="usdPerShare">1.01</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
	<us-gaap:IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear contextRef="FI2018Q3" decimals="-3" id="Fact-D86B19A2B2085E1E9D18B6CAA2250A19" unitRef="usd">204000</us-gaap:IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear>
	<us-gaap:IncomeTaxExpenseBenefit contextRef="FD2017Q3QTD" decimals="-3" id="Fact-A9E343FCCCC159C09F0D695A61830245" unitRef="usd">10259000</us-gaap:IncomeTaxExpenseBenefit>
	<us-gaap:IncomeTaxExpenseBenefit contextRef="FD2017Q3QTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-F84CD4F5196C177B9C1BAD8435E817C4" unitRef="usd">457000</us-gaap:IncomeTaxExpenseBenefit>
	<us-gaap:IncomeTaxExpenseBenefit contextRef="FD2017Q3QTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-47A476459F6ECB9B1900AD84362AAF08" unitRef="usd">9802000</us-gaap:IncomeTaxExpenseBenefit>
	<us-gaap:IncomeTaxExpenseBenefit contextRef="FD2017Q3YTD" decimals="-3" id="Fact-8F5C0A41370E513DBA63BAC749F6D58D" unitRef="usd">9334000</us-gaap:IncomeTaxExpenseBenefit>
	<us-gaap:IncomeTaxExpenseBenefit contextRef="FD2017Q3YTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-2C8F04EEDCDCB1A33011AD8436022975" unitRef="usd">491000</us-gaap:IncomeTaxExpenseBenefit>
	<us-gaap:IncomeTaxExpenseBenefit contextRef="FD2017Q3YTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-8C32E1C7DB578EC89232AD84364F829D" unitRef="usd">8843000</us-gaap:IncomeTaxExpenseBenefit>
	<us-gaap:IncomeTaxExpenseBenefit contextRef="FD2018Q3QTD" decimals="-3" id="Fact-F281AEE8BA2055229DDBF79DB6C09FA7" unitRef="usd">837000</us-gaap:IncomeTaxExpenseBenefit>
	<us-gaap:IncomeTaxExpenseBenefit contextRef="FD2018Q3YTD" decimals="-3" id="Fact-D169C3C4F065564182EBE17281951E1E" unitRef="usd">11976000</us-gaap:IncomeTaxExpenseBenefit>
	<us-gaap:IncreaseDecreaseInAccountsPayable contextRef="FD2017Q3YTD" decimals="-3" id="Fact-5D79386F4A935A028086548DD044644E" unitRef="usd">19132000</us-gaap:IncreaseDecreaseInAccountsPayable>
	<us-gaap:IncreaseDecreaseInAccountsPayable contextRef="FD2018Q3YTD" decimals="-3" id="Fact-9C873DD7A4FE50E0874AF0FFC92298BF" unitRef="usd">-1182000</us-gaap:IncreaseDecreaseInAccountsPayable>
	<us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="FD2017Q3YTD" decimals="-3" id="Fact-0FACAB6F6FF45857B572AB87B9CBBF67" unitRef="usd">58379000</us-gaap:IncreaseDecreaseInAccountsReceivable>
	<us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="FD2018Q3YTD" decimals="-3" id="Fact-327E92032115506886722F7FE54EDCED" unitRef="usd">18136000</us-gaap:IncreaseDecreaseInAccountsReceivable>
	<us-gaap:IncreaseDecreaseInAccruedLiabilities contextRef="FD2017Q3YTD" decimals="-3" id="Fact-595D27FEDEB551039CB48DEB40223892" unitRef="usd">8819000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
	<us-gaap:IncreaseDecreaseInAccruedLiabilities contextRef="FD2018Q3YTD" decimals="-3" id="Fact-42F058AE6CDE505DB1FB7D200F06482B" unitRef="usd">2266000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
	<us-gaap:IncreaseDecreaseInAccruedTaxesPayable contextRef="FD2017Q3YTD" decimals="-3" id="Fact-B9EFA994E7E959BB8ABF4822C4BF56E0" unitRef="usd">3724000</us-gaap:IncreaseDecreaseInAccruedTaxesPayable>
	<us-gaap:IncreaseDecreaseInAccruedTaxesPayable contextRef="FD2018Q3YTD" decimals="-3" id="Fact-EF37F3FCC96159208C0B2877082E8752" unitRef="usd">-17497000</us-gaap:IncreaseDecreaseInAccruedTaxesPayable>
	<us-gaap:IncreaseDecreaseInDeferredIncomeTaxes contextRef="FD2017Q3YTD" decimals="-3" id="Fact-94631E63283753748F78912C8E45B362" unitRef="usd">1830000</us-gaap:IncreaseDecreaseInDeferredIncomeTaxes>
	<us-gaap:IncreaseDecreaseInDeferredIncomeTaxes contextRef="FD2018Q3YTD" decimals="-3" id="Fact-85C60222407B550BBBF95431D9763A2B" unitRef="usd">-175000</us-gaap:IncreaseDecreaseInDeferredIncomeTaxes>
	<us-gaap:IncreaseDecreaseInDeferredRevenue contextRef="FD2017Q3YTD" decimals="-3" id="Fact-C4F96186A9B25C8CA2327D179F6DEFD6" unitRef="usd">5883000</us-gaap:IncreaseDecreaseInDeferredRevenue>
	<us-gaap:IncreaseDecreaseInDeferredRevenue contextRef="FD2018Q3YTD" decimals="-3" id="Fact-DACA4E540F75524FA06317D085D1A81F" unitRef="usd">4841000</us-gaap:IncreaseDecreaseInDeferredRevenue>
	<us-gaap:IncreaseDecreaseInInventories contextRef="FD2017Q3YTD" decimals="-3" id="Fact-9C55D65D35395B6992AA147F41FCC99F" unitRef="usd">18550000</us-gaap:IncreaseDecreaseInInventories>
	<us-gaap:IncreaseDecreaseInInventories contextRef="FD2018Q3YTD" decimals="-3" id="Fact-E93B9D3EE74F5E2F96E76F7647A28E1C" unitRef="usd">27699000</us-gaap:IncreaseDecreaseInInventories>
	<us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet contextRef="FD2017Q3YTD" decimals="-3" id="Fact-055C1E40B6295582AA8E26A1922638D3" unitRef="usd">-1861000</us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet>
	<us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet contextRef="FD2018Q3YTD" decimals="-3" id="Fact-AAAC6BEECD7D562EAB21AF50B3EEB97E" unitRef="usd">1604000</us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet>
	<us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="FD2017Q3YTD" decimals="-3" id="Fact-207E648CABEE58ACA9F0EF29D0E54820" unitRef="usd">14666000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
	<us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="FD2018Q3YTD" decimals="-3" id="Fact-48150496CE395DC790F61E32F8C89AEB" unitRef="usd">3437000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
	<us-gaap:IncreaseDecreaseInUnbilledReceivables contextRef="FD2017Q3YTD" decimals="-3" id="Fact-6BE36466139556369FDA089BF1635023" unitRef="usd">46010000</us-gaap:IncreaseDecreaseInUnbilledReceivables>
	<us-gaap:IncreaseDecreaseInUnbilledReceivables contextRef="FD2018Q3YTD" decimals="-3" id="Fact-E6A374A95C14528293C957CB149C4649" unitRef="usd">6542000</us-gaap:IncreaseDecreaseInUnbilledReceivables>
	<us-gaap:InventoryFinishedGoodsNetOfReserves contextRef="FI2017Q4" decimals="-3" id="Fact-4FDFE6F9D6035B9FB918367DFEF79078" unitRef="usd">31882000</us-gaap:InventoryFinishedGoodsNetOfReserves>
	<us-gaap:InventoryFinishedGoodsNetOfReserves contextRef="FI2018Q3" decimals="-3" id="Fact-0F8AB3192249540BA70D79F4C9BE0EBE" unitRef="usd">43304000</us-gaap:InventoryFinishedGoodsNetOfReserves>
	<us-gaap:InventoryNet contextRef="FI2017Q4" decimals="-3" id="Fact-82D787DB19DB58B4B580128ACB20B7C2" unitRef="usd">67923000</us-gaap:InventoryNet>
	<us-gaap:InventoryNet contextRef="FI2018Q3" decimals="-3" id="Fact-AC45016A54FE513A9DAA62DC05C34D3E" unitRef="usd">94035000</us-gaap:InventoryNet>
	<us-gaap:InventoryRawMaterialsNetOfReserves contextRef="FI2017Q4" decimals="-3" id="Fact-0ADAF662055952D1A692F416ACBEE493" unitRef="usd">33927000</us-gaap:InventoryRawMaterialsNetOfReserves>
	<us-gaap:InventoryRawMaterialsNetOfReserves contextRef="FI2018Q3" decimals="-3" id="Fact-C0E856345E7B53ECB74A1634998D02FD" unitRef="usd">46660000</us-gaap:InventoryRawMaterialsNetOfReserves>
	<us-gaap:InventoryWorkInProcessNetOfReserves contextRef="FI2017Q4" decimals="-3" id="Fact-1AB21115A40F51A2AA3EB7282B911587" unitRef="usd">2114000</us-gaap:InventoryWorkInProcessNetOfReserves>
	<us-gaap:InventoryWorkInProcessNetOfReserves contextRef="FI2018Q3" decimals="-3" id="Fact-346D1511B8CF51E2BC023B7B43A8173F" unitRef="usd">4071000</us-gaap:InventoryWorkInProcessNetOfReserves>
	<us-gaap:InvestmentIncomeNonoperating contextRef="FD2017Q3QTD" decimals="-3" id="Fact-DBEBB6B559BA552BA3EA817D76D7DB1B" unitRef="usd">2475000</us-gaap:InvestmentIncomeNonoperating>
	<us-gaap:InvestmentIncomeNonoperating contextRef="FD2017Q3YTD" decimals="-3" id="Fact-A452471A216655E88056F1D8D39D3D62" unitRef="usd">6625000</us-gaap:InvestmentIncomeNonoperating>
	<us-gaap:InvestmentIncomeNonoperating contextRef="FD2018Q3QTD" decimals="-3" id="Fact-5EA66FFAB06B54C2A329CF2A017F7A08" unitRef="usd">3937000</us-gaap:InvestmentIncomeNonoperating>
	<us-gaap:InvestmentIncomeNonoperating contextRef="FD2018Q3YTD" decimals="-3" id="Fact-7A275CF981BE5385BEBF999FBE34E3E5" unitRef="usd">10736000</us-gaap:InvestmentIncomeNonoperating>
	<us-gaap:Liabilities contextRef="FI2017Q4" decimals="-3" id="Fact-A528A52C31D35A7994973D7090871BE6" unitRef="usd">192080000</us-gaap:Liabilities>
	<us-gaap:Liabilities contextRef="FI2018Q3" decimals="-3" id="Fact-C8F8ECD6CDD4558E90963B4DFEAA435D" unitRef="usd">175252000</us-gaap:Liabilities>
	<us-gaap:LiabilitiesAndStockholdersEquity contextRef="FI2017Q4" decimals="-3" id="Fact-3CFB2C68245C5776A4FD344E9FBBC71E" unitRef="usd">1287753000</us-gaap:LiabilitiesAndStockholdersEquity>
	<us-gaap:LiabilitiesAndStockholdersEquity contextRef="FI2018Q3" decimals="-3" id="Fact-764C9F47C73855CEBB36899A25DDF946" unitRef="usd">1324696000</us-gaap:LiabilitiesAndStockholdersEquity>
	<us-gaap:LiabilitiesCurrent contextRef="FI2017Q4" decimals="-3" id="Fact-A039D88B0B1B51ABB9D7FBB7F5691C9D" unitRef="usd">112635000</us-gaap:LiabilitiesCurrent>
	<us-gaap:LiabilitiesCurrent contextRef="FI2018Q3" decimals="-3" id="Fact-DEEF8067FE025FE58656CF01779D5C6D" unitRef="usd">111153000</us-gaap:LiabilitiesCurrent>
	<us-gaap:LiabilitiesFairValueAdjustment contextRef="FD2018Q3YTD_us-gaap_BusinessAcquisitionAxis_cgnx_ChiaroTechnologiesLLCMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" decimals="-3" id="Fact-98C5D028A2B35A39859C1930567E80CF" unitRef="usd">170000</us-gaap:LiabilitiesFairValueAdjustment>
	<us-gaap:LiabilitiesFairValueAdjustment contextRef="FD2018Q3YTD_us-gaap_BusinessAcquisitionAxis_cgnx_GViVenturesInc.Member_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" decimals="-3" id="Fact-AD40A7DE907C572DB237BC5B8D17C66A" unitRef="usd">1130000</us-gaap:LiabilitiesFairValueAdjustment>
	<us-gaap:LiabilitiesFairValueAdjustment contextRef="FD2018Q3YTD_us-gaap_BusinessAcquisitionAxis_cgnx_ManateeWorksInc.Member_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" decimals="-3" id="Fact-C06C0D10CB5F5C3BBD9B80E3CA6D2A5A" unitRef="usd">-1350000</us-gaap:LiabilitiesFairValueAdjustment>
	<us-gaap:LiabilityForUncertainTaxPositionsNoncurrent contextRef="FI2017Q4" decimals="-3" id="Fact-0C1A67120E5F59EEA60D607AF46DD23D" unitRef="usd">6488000</us-gaap:LiabilityForUncertainTaxPositionsNoncurrent>
	<us-gaap:LiabilityForUncertainTaxPositionsNoncurrent contextRef="FI2018Q3" decimals="-3" id="Fact-5D6951C8CAFC529893D4FDE9F462621C" unitRef="usd">6646000</us-gaap:LiabilityForUncertainTaxPositionsNoncurrent>
	<us-gaap:LongTermInvestments contextRef="FI2017Q4" decimals="-3" id="Fact-27D3D76473745C2785CB3D7629E1BBC3" unitRef="usd">423441000</us-gaap:LongTermInvestments>
	<us-gaap:LongTermInvestments contextRef="FI2018Q3" decimals="-3" id="Fact-A79CCDE40D6154D1BC50640C5AC14D68" unitRef="usd">281929000</us-gaap:LongTermInvestments>
	<us-gaap:MaximumLengthOfTimeHedgedInCashFlowHedge1 contextRef="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember" id="Fact-B52AF7A10CFB54E484E20C3D585F1572">P18M</us-gaap:MaximumLengthOfTimeHedgedInCashFlowHedge1>
	<us-gaap:MaximumRemainingMaturityOfForeignCurrencyDerivatives1 contextRef="FD2018Q3YTD_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" id="Fact-9E3373F37CC355E58E6ADE7A6A7B25A5">P45D</us-gaap:MaximumRemainingMaturityOfForeignCurrencyDerivatives1>
	<us-gaap:MoneyMarketFundsAtCarryingValue contextRef="FI2017Q4" decimals="-3" id="Fact-D4BAF982ADA955D9B041FAAECD47A69C" unitRef="usd">8631000</us-gaap:MoneyMarketFundsAtCarryingValue>
	<us-gaap:MoneyMarketFundsAtCarryingValue contextRef="FI2018Q3" decimals="-3" id="Fact-BF6E5B6600F95DCE804DB3F60CC53ED0" unitRef="usd">2717000</us-gaap:MoneyMarketFundsAtCarryingValue>
	<us-gaap:MoneyMarketFundsAtCarryingValue contextRef="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" decimals="-3" id="Fact-FE7250F3B9F25CD0B2C3E456C29C6CAD" unitRef="usd">2717000</us-gaap:MoneyMarketFundsAtCarryingValue>
	<us-gaap:MoneyMarketFundsAtCarryingValue contextRef="FI2018Q3_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" decimals="-3" id="Fact-5B98A16AB90E520D894736485D3C5FB5" unitRef="usd">0</us-gaap:MoneyMarketFundsAtCarryingValue>
	<us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="FD2017Q3YTD" decimals="-3" id="Fact-4061B4CA59C15742B99E005F3F1A10C2" unitRef="usd">-77759000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
	<us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="FD2018Q3YTD" decimals="-3" id="Fact-A9ED847B7A3551B1A13F410A6A36FB72" unitRef="usd">-140663000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
	<us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="FD2017Q3YTD" decimals="-3" id="Fact-DE5B07E98A395E58B60A5A9E860DA07D" unitRef="usd">-31885000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
	<us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="FD2018Q3YTD" decimals="-3" id="Fact-9AA22ACB0E1B506F9818781A4906E14F" unitRef="usd">-8284000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
	<us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="FD2017Q3YTD" decimals="-3" id="Fact-488F6DDB88ED57E6B68038E1EB6A2D9A" unitRef="usd">140054000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
	<us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="FD2018Q3YTD" decimals="-3" id="Fact-E029587740F45BE4A42E24E49EB9A9F6" unitRef="usd">151692000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
	<us-gaap:NetIncomeLoss contextRef="FD2017Q3QTD" decimals="-3" id="Fact-FF91795310F1563F950D718FAA95EEFD" unitRef="usd">102493000</us-gaap:NetIncomeLoss>
	<us-gaap:NetIncomeLoss contextRef="FD2017Q3QTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-295ED699F707D9CE7A20AD844CF69377" unitRef="usd">145000</us-gaap:NetIncomeLoss>
	<us-gaap:NetIncomeLoss contextRef="FD2017Q3QTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-292C5C8FC0FF5035EB48AD844CE66F7A" unitRef="usd">102348000</us-gaap:NetIncomeLoss>
	<us-gaap:NetIncomeLoss contextRef="FD2017Q3YTD" decimals="-3" id="Fact-2C6E658E61C55C229665EE992BBD7B03" unitRef="usd">204459000</us-gaap:NetIncomeLoss>
	<us-gaap:NetIncomeLoss contextRef="FD2017Q3YTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-3AED1A494B6AD9B8467EAD844CCF69C4" unitRef="usd">384000</us-gaap:NetIncomeLoss>
	<us-gaap:NetIncomeLoss contextRef="FD2017Q3YTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-DBE4375C9C9B460532E6AD844CDAA246" unitRef="usd">204075000</us-gaap:NetIncomeLoss>
	<us-gaap:NetIncomeLoss contextRef="FD2018Q3QTD" decimals="-3" id="Fact-0A01CDDA3ADE5216AC124A6746B85F36" unitRef="usd">80436000</us-gaap:NetIncomeLoss>
	<us-gaap:NetIncomeLoss contextRef="FD2018Q3YTD" decimals="-3" id="Fact-5264397CE77C59FD936D4E272CFFAE5B" unitRef="usd">173849000</us-gaap:NetIncomeLoss>
	<us-gaap:NetIncomeLoss contextRef="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" decimals="-3" id="Fact-9532404AA9075373928EC4E734B8BEC9" unitRef="usd">173849000</us-gaap:NetIncomeLoss>
	<us-gaap:OperatingIncomeLoss contextRef="FD2017Q3QTD" decimals="-3" id="Fact-FE9959460C45590FABC54AE0C609D909" unitRef="usd">110849000</us-gaap:OperatingIncomeLoss>
	<us-gaap:OperatingIncomeLoss contextRef="FD2017Q3QTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-48B15320593389FD627CAD83F87B043E" unitRef="usd">602000</us-gaap:OperatingIncomeLoss>
	<us-gaap:OperatingIncomeLoss contextRef="FD2017Q3QTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-CB267A4BE11D0F0D94A4AD83F8F7F5D0" unitRef="usd">110247000</us-gaap:OperatingIncomeLoss>
	<us-gaap:OperatingIncomeLoss contextRef="FD2017Q3YTD" decimals="-3" id="Fact-BB6FC71545EF56AD804D781885086FD1" unitRef="usd">208086000</us-gaap:OperatingIncomeLoss>
	<us-gaap:OperatingIncomeLoss contextRef="FD2017Q3YTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-DD5FA097A127376E396DAD83F7DED758" unitRef="usd">875000</us-gaap:OperatingIncomeLoss>
	<us-gaap:OperatingIncomeLoss contextRef="FD2017Q3YTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-3BFB875FA8D90940CF09AD83F825B322" unitRef="usd">207211000</us-gaap:OperatingIncomeLoss>
	<us-gaap:OperatingIncomeLoss contextRef="FD2018Q3QTD" decimals="-3" id="Fact-4BB539ABC26C5A23A0CF73BA667203BF" unitRef="usd">77844000</us-gaap:OperatingIncomeLoss>
	<us-gaap:OperatingIncomeLoss contextRef="FD2018Q3YTD" decimals="-3" id="Fact-4CEDEBEE819256FC8156FD31E532C9CD" unitRef="usd">175895000</us-gaap:OperatingIncomeLoss>
	<us-gaap:OtherAssetsNoncurrent contextRef="FI2017Q4" decimals="-3" id="Fact-62D4F352521253F68AB86080C1486652" unitRef="usd">2491000</us-gaap:OtherAssetsNoncurrent>
	<us-gaap:OtherAssetsNoncurrent contextRef="FI2018Q3" decimals="-3" id="Fact-CD69C737A89955B9B4B3683B81C1BC1A" unitRef="usd">3873000</us-gaap:OtherAssetsNoncurrent>
	<us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent contextRef="FD2017Q3QTD" decimals="-3" id="Fact-699C4958AAFF55E9BEC0564CBE6E7C0A" unitRef="usd">156000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
	<us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent contextRef="FD2017Q3YTD" decimals="-3" id="Fact-34869C92780653CE9BB3A1693433A0F8" unitRef="usd">867000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
	<us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent contextRef="FD2018Q3QTD" decimals="-3" id="Fact-187D081B79A45F37919C94A138ED91D7" unitRef="usd">256000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
	<us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent contextRef="FD2018Q3YTD" decimals="-3" id="Fact-6D9646B603A651E7ACB399405A346BC7" unitRef="usd">-715000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
	<us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax contextRef="FD2017Q3QTD" decimals="-3" id="Fact-7F75E047AE495A1D960AD801B2D310AF" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax>
	<us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax contextRef="FD2017Q3YTD" decimals="-3" id="Fact-7FE7D8BEE1BF53F78C0E8AA37A0B81D3" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax>
	<us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax contextRef="FD2018Q3QTD" decimals="-3" id="Fact-AD80A92892FE57AD9B48C2EE421C1BF4" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax>
	<us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax contextRef="FD2018Q3YTD" decimals="-3" id="Fact-49DF7774EB7550DF947818C55CD728BA" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax>
	<us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax contextRef="FD2017Q3QTD" decimals="-3" id="Fact-0E97CE85D66A5CD3B034B9679E9EE42A" unitRef="usd">-60000</us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax contextRef="FD2017Q3YTD" decimals="-3" id="Fact-1C6E423FD04B5931A3F8DE844CDC8420" unitRef="usd">-37000</us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax contextRef="FD2018Q3QTD" decimals="-3" id="Fact-C7B177AA581C528AA0B8F44C1EA60A9C" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax contextRef="FD2018Q3YTD" decimals="-3" id="Fact-8F552C984397507EB7C0170D33CE8583" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax contextRef="FD2017Q3QTD" decimals="-3" id="Fact-5DD75837410B50888DDCDBB29A7FD25B" unitRef="usd">-8000</us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax>
	<us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax contextRef="FD2017Q3YTD" decimals="-3" id="Fact-7806E1777FBE574DAE2B31AD48E789A0" unitRef="usd">-5000</us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax>
	<us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax contextRef="FD2018Q3QTD" decimals="-3" id="Fact-6E3160CC82C35CC8BCE4F946E6E7B9E9" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax>
	<us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax contextRef="FD2018Q3YTD" decimals="-3" id="Fact-435B53ABE64F56E0930E90316F7B6285" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax>
	<us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="FD2017Q3QTD" decimals="-3" id="Fact-7E5B55AE16075C368D0C65C6F2F2CC88" unitRef="usd">5753000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="FD2017Q3YTD" decimals="-3" id="Fact-787973EB593B559CA9242241B672F2C4" unitRef="usd">18497000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="FD2018Q3QTD" decimals="-3" id="Fact-D6FE2A9EE2655D1CA00B1370285CE45B" unitRef="usd">-1881000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="FD2018Q3YTD" decimals="-3" id="Fact-972385FF4B3B53F7B07CB1AB198AF8ED" unitRef="usd">-5078000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" decimals="-3" id="Fact-D5927A1468F654968654EB4FE8778CD4" unitRef="usd">-5078000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="FD2017Q3QTD" decimals="-3" id="Fact-AD2CE9C83C355069953A9F7ABEE3CAF0" unitRef="usd">5849000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
	<us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="FD2017Q3YTD" decimals="-3" id="Fact-A9AD1B29E4A053219AA6D363B8998A90" unitRef="usd">19327000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
	<us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="FD2018Q3QTD" decimals="-3" id="Fact-30E5FCA442835221AF479F19CC05DD1E" unitRef="usd">-1625000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
	<us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="FD2018Q3YTD" decimals="-3" id="Fact-42DA52817032592BBE825295B6CECFE3" unitRef="usd">-5793000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
	<us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax contextRef="FD2017Q3QTD" decimals="-3" id="Fact-E1ECE51D8EFB5FACB9EB96752EB2B20D" unitRef="usd">263000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax contextRef="FD2017Q3YTD" decimals="-3" id="Fact-E78B1AD0B195518083D1D7065D3B1940" unitRef="usd">370000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax contextRef="FD2018Q3QTD" decimals="-3" id="Fact-5745DB920D015D4B8A35AE2D3E17FD5F" unitRef="usd">266000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax contextRef="FD2018Q3YTD" decimals="-3" id="Fact-C7A307FC5F465FEEB5A4FE78CEFC686F" unitRef="usd">535000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax contextRef="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" decimals="-3" id="Fact-9C31D1A59B265157B93490551FB874D2" unitRef="usd">535000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax contextRef="FD2017Q3QTD" decimals="-3" id="Fact-EF606771EE75560891AA6B33ADDF5CB4" unitRef="usd">56000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax contextRef="FD2017Q3YTD" decimals="-3" id="Fact-6D96F5FF54CD571A97601D6F1B94022D" unitRef="usd">21000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax contextRef="FD2018Q3QTD" decimals="-3" id="Fact-79DF4E8110B950FBA009B2BEE7FDBCF1" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax contextRef="FD2018Q3YTD" decimals="-3" id="Fact-18EF28EAEBE457079E983BE927CF5E61" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax contextRef="FD2017Q3QTD" decimals="-3" id="Fact-41FBB1689DB7571E91508F59D55DF980" unitRef="usd">-4000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax contextRef="FD2017Q3YTD" decimals="-3" id="Fact-BEF6A0D9BAB15B27854FED5E44A4C4A2" unitRef="usd">-16000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax contextRef="FD2018Q3QTD" decimals="-3" id="Fact-88515311EF3E5EFCBFE74DC92D2654D9" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax contextRef="FD2018Q3YTD" decimals="-3" id="Fact-EE4D9C3C69B05D9993B0075579E47F8E" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="FD2017Q3QTD" decimals="-3" id="Fact-3137CDD05332518CB1122D563A504B01" unitRef="usd">419000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="FD2017Q3YTD" decimals="-3" id="Fact-2BA4C82DD29A5863AFDF0EEA21EEB295" unitRef="usd">1237000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="FD2018Q3QTD" decimals="-3" id="Fact-325C4D6D32175A27BC9F6B44970F4A99" unitRef="usd">522000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="FD2018Q3YTD" decimals="-3" id="Fact-1E4544768BA15B16AEE4E110F5526BC7" unitRef="usd">-180000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" decimals="-3" id="Fact-BE26C27A80F75708A9715A5F02728400" unitRef="usd">-180000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="FD2017Q3QTD" decimals="-3" id="Fact-CE428F0CABF1511682A7B6567B0AF034" unitRef="usd">41000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="FD2017Q3YTD" decimals="-3" id="Fact-473C1CC8538A569A97D278F00ABF2C3C" unitRef="usd">191000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="FD2018Q3QTD" decimals="-3" id="Fact-E3A13A426ADD5EF2B4789BEA1FF9F14B" unitRef="usd">24000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
	<us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="FD2018Q3YTD" decimals="-3" id="Fact-ED79505C095B546DB30DA1DE3BC095DE" unitRef="usd">-82000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
	<us-gaap:OtherLiabilitiesNoncurrent contextRef="FI2017Q4" decimals="-3" id="Fact-4191DF3F3A7A5BB7ABAD6B1ABC386D3C" unitRef="usd">5904000</us-gaap:OtherLiabilitiesNoncurrent>
	<us-gaap:OtherLiabilitiesNoncurrent contextRef="FI2018Q3" decimals="-3" id="Fact-47E6A29040AA555A8287DED33ACA61F7" unitRef="usd">5474000</us-gaap:OtherLiabilitiesNoncurrent>
	<us-gaap:OtherNonoperatingIncomeExpense contextRef="FD2017Q3QTD" decimals="-3" id="Fact-4CEEAE120EFD5148AC0DCE867057EF5C" unitRef="usd">-445000</us-gaap:OtherNonoperatingIncomeExpense>
	<us-gaap:OtherNonoperatingIncomeExpense contextRef="FD2017Q3YTD" decimals="-3" id="Fact-3A5BECDEDCCF58C6BF8201084398BC9B" unitRef="usd">-344000</us-gaap:OtherNonoperatingIncomeExpense>
	<us-gaap:OtherNonoperatingIncomeExpense contextRef="FD2018Q3QTD" decimals="-3" id="Fact-5A6E295F87DC5410BCF6CFE2C4AE2F15" unitRef="usd">-129000</us-gaap:OtherNonoperatingIncomeExpense>
	<us-gaap:OtherNonoperatingIncomeExpense contextRef="FD2018Q3YTD" decimals="-3" id="Fact-1A1CE7C15AD65B42A8D7A52BE8710609" unitRef="usd">-98000</us-gaap:OtherNonoperatingIncomeExpense>
	<us-gaap:PaymentsForRepurchaseOfCommonStock contextRef="FD2017Q3YTD" decimals="-3" id="Fact-424A5DB140A75DAAB5F650475F8928E9" unitRef="usd">99347000</us-gaap:PaymentsForRepurchaseOfCommonStock>
	<us-gaap:PaymentsForRepurchaseOfCommonStock contextRef="FD2018Q3YTD" decimals="-3" id="Fact-B8B932D6C91C5577A14424DA9880E338" unitRef="usd">142262000</us-gaap:PaymentsForRepurchaseOfCommonStock>
	<us-gaap:PaymentsOfDividendsCommonStock contextRef="FD2017Q3YTD" decimals="-3" id="Fact-684B213A81DA52278A2C8DE0E13EB3D4" unitRef="usd">21236000</us-gaap:PaymentsOfDividendsCommonStock>
	<us-gaap:PaymentsOfDividendsCommonStock contextRef="FD2018Q3YTD" decimals="-3" id="Fact-4B2EF69CE7B4577A82F0A236DB729D13" unitRef="usd">23283000</us-gaap:PaymentsOfDividendsCommonStock>
	<us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired contextRef="FD2017Q3YTD" decimals="-3" id="Fact-F684EB139E4F5C74A86307210BE411C9" unitRef="usd">24118000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
	<us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired contextRef="FD2018Q3YTD" decimals="-3" id="Fact-812AD9445F1C5A3AA42FA9B08EBFE07C" unitRef="usd">0</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
	<us-gaap:PaymentsToAcquireInvestments contextRef="FD2017Q3YTD" decimals="-3" id="Fact-B2405BA8B42650CE96DC7EAA2AC540CA" unitRef="usd">415508000</us-gaap:PaymentsToAcquireInvestments>
	<us-gaap:PaymentsToAcquireInvestments contextRef="FD2018Q3YTD" decimals="-3" id="Fact-F29B96829CAB50C2A70809E1242765AB" unitRef="usd">616047000</us-gaap:PaymentsToAcquireInvestments>
	<us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="FD2017Q3YTD" decimals="-3" id="Fact-1C84C031ADAB5135B73A1C0689398F09" unitRef="usd">20044000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
	<us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="FD2018Q3YTD" decimals="-3" id="Fact-571824E9E0295A5FA9D41344B90CDAD2" unitRef="usd">27356000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
	<us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="FI2017Q4" decimals="-3" id="Fact-F0A98838812A5D0B8A60171D982B8790" unitRef="usd">30683000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
	<us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="FI2017Q4_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-D133333FCA297FFDA0A1AD84BB5A4261" unitRef="usd">-117000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
	<us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="FI2017Q4_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-ED6E60B940C16C900006AD84BB4881FC" unitRef="usd">30800000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
	<us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="FI2018Q3" decimals="-3" id="Fact-07BF4ABFF4B251BBBA446F8EDAF9B5FA" unitRef="usd">27687000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
	<us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions contextRef="FD2017Q3YTD" decimals="-3" id="Fact-82BD4736DBB45BDE8D413BE90E78A6CF" unitRef="usd">44750000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
	<us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions contextRef="FD2018Q3YTD" decimals="-3" id="Fact-CB04F32C026B5C3B9FC98927748F91DD" unitRef="usd">25882000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
	<us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments contextRef="FD2017Q3YTD" decimals="-3" id="Fact-D76D3CCDA9EC5586BDE57CAD4F0521B2" unitRef="usd">428076000</us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments>
	<us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments contextRef="FD2018Q3YTD" decimals="-3" id="Fact-1107399102BA56C7A12E31497C6D53C4" unitRef="usd">635119000</us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments>
	<us-gaap:ProductWarrantyAccrual contextRef="FI2017Q4" decimals="-3" id="Fact-C250C90E205C537A97D46593E8631D01" unitRef="usd">4701000</us-gaap:ProductWarrantyAccrual>
	<us-gaap:ProductWarrantyAccrual contextRef="FI2018Q3" decimals="-3" id="Fact-224AB89981385777A61973C6A7110CC8" unitRef="usd">4737000</us-gaap:ProductWarrantyAccrual>
	<us-gaap:ProductWarrantyAccrualPayments contextRef="FD2018Q3YTD" decimals="-3" id="Fact-4E9B6E23C32052DC862221F59C31F2D3" unitRef="usd">3223000</us-gaap:ProductWarrantyAccrualPayments>
	<us-gaap:ProductWarrantyAccrualWarrantiesIssued contextRef="FD2018Q3YTD" decimals="-3" id="Fact-FEBA84AC7C1F587592D42772C2612115" unitRef="usd">3376000</us-gaap:ProductWarrantyAccrualWarrantiesIssued>
	<us-gaap:PropertyPlantAndEquipmentNet contextRef="FI2017Q4" decimals="-3" id="Fact-C94E427D7DCB5152A868D3BFF7BB09F8" unitRef="usd">78048000</us-gaap:PropertyPlantAndEquipmentNet>
	<us-gaap:PropertyPlantAndEquipmentNet contextRef="FI2018Q3" decimals="-3" id="Fact-E8C94F012837569ABD82613FD989D6C6" unitRef="usd">88930000</us-gaap:PropertyPlantAndEquipmentNet>
	<us-gaap:ResearchAndDevelopmentExpense contextRef="FD2017Q3QTD" decimals="-3" id="Fact-F792BAD6C7805CC693F678534EC0E865" unitRef="usd">26078000</us-gaap:ResearchAndDevelopmentExpense>
	<us-gaap:ResearchAndDevelopmentExpense contextRef="FD2017Q3YTD" decimals="-3" id="Fact-D1660D6B07ED5BBE8208E1CB1BB119B0" unitRef="usd">72225000</us-gaap:ResearchAndDevelopmentExpense>
	<us-gaap:ResearchAndDevelopmentExpense contextRef="FD2018Q3QTD" decimals="-3" id="Fact-BBD75D0AD2635C3794BF1645525E2882" unitRef="usd">29700000</us-gaap:ResearchAndDevelopmentExpense>
	<us-gaap:ResearchAndDevelopmentExpense contextRef="FD2018Q3YTD" decimals="-3" id="Fact-84895B18B6B657528035B9E9D885ABAA" unitRef="usd">87664000</us-gaap:ResearchAndDevelopmentExpense>
	<us-gaap:RetainedEarningsAccumulatedDeficit contextRef="FI2017Q4" decimals="-3" id="Fact-7BBF2F7A772B52BEB428992EE103375E" unitRef="usd">668587000</us-gaap:RetainedEarningsAccumulatedDeficit>
	<us-gaap:RetainedEarningsAccumulatedDeficit contextRef="FI2017Q4_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-43E8CFABD3AB97B57F4EAD8520662C50" unitRef="usd">320000</us-gaap:RetainedEarningsAccumulatedDeficit>
	<us-gaap:RetainedEarningsAccumulatedDeficit contextRef="FI2017Q4_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-F6B83545A7E7B213B315AD85205DDC83" unitRef="usd">668267000</us-gaap:RetainedEarningsAccumulatedDeficit>
	<us-gaap:RetainedEarningsAccumulatedDeficit contextRef="FI2018Q3" decimals="-3" id="Fact-D6126182E28C574087853B0F9827F3C6" unitRef="usd">670935000</us-gaap:RetainedEarningsAccumulatedDeficit>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3QTD" decimals="-3" id="Fact-6038FE128BE153447E77AD8675AEF4B9" unitRef="usd">266042000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3QTD_us-gaap_ProductOrServiceAxis_cgnx_ApplicationSpecificCustomerSolutionsMember" decimals="-3" id="Fact-439AFCF2FF723255FA6AAD86758B6219" unitRef="usd">106061000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3QTD_us-gaap_ProductOrServiceAxis_cgnx_StandardProductsandServicesMember" decimals="-3" id="Fact-06FDC02ADD4FA5515BADAD86761196F6" unitRef="usd">159981000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3QTD_us-gaap_StatementGeographicalAxis_cgnx_AsiaExcludingChinaMember" decimals="-3" id="Fact-0418C335BCA8BD76DDCFAD85C636E17B" unitRef="usd">29364000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3QTD_us-gaap_StatementGeographicalAxis_country_CN" decimals="-3" id="Fact-F4E78754DD6626611CA4AD85D24E4F0E" unitRef="usd">35546000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3QTD_us-gaap_StatementGeographicalAxis_us-gaap_AmericasMember" decimals="-3" id="Fact-DB7E46CF1CAA5DA7025AAD85CC4A742C" unitRef="usd">54902000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3QTD_us-gaap_StatementGeographicalAxis_us-gaap_EuropeMember" decimals="-3" id="Fact-D7589F90E2CF60CBA77DAD85CBF371EE" unitRef="usd">146230000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3YTD" decimals="-3" id="Fact-D1A1C69F2D305F815DF9AD86740DFE08" unitRef="usd">583161000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3YTD_us-gaap_ProductOrServiceAxis_cgnx_ApplicationSpecificCustomerSolutionsMember" decimals="-3" id="Fact-5812B80FC9EA9FFEEA4CAD86745C362D" unitRef="usd">129697000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3YTD_us-gaap_ProductOrServiceAxis_cgnx_StandardProductsandServicesMember" decimals="-3" id="Fact-4B1C6E06AE9343AEA2BAAD867662E04D" unitRef="usd">453464000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3YTD_us-gaap_StatementGeographicalAxis_cgnx_AsiaExcludingChinaMember" decimals="-3" id="Fact-D8D3995173760FFFCCB0AD85C4FA947B" unitRef="usd">90034000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3YTD_us-gaap_StatementGeographicalAxis_country_CN" decimals="-3" id="Fact-4468321F3EB12F605429AD85C97006C6" unitRef="usd">84764000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3YTD_us-gaap_StatementGeographicalAxis_us-gaap_AmericasMember" decimals="-3" id="Fact-0731A99632DC62A9DF21AD85C5743C45" unitRef="usd">155977000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2017Q3YTD_us-gaap_StatementGeographicalAxis_us-gaap_EuropeMember" decimals="-3" id="Fact-B7D875B653A9BF4C216FAD85C52BA0A6" unitRef="usd">252386000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3QTD" decimals="-3" id="Fact-E981628A17142D8C4BD5AD8675611C8F" unitRef="usd">232221000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3QTD_us-gaap_ProductOrServiceAxis_cgnx_ApplicationSpecificCustomerSolutionsMember" decimals="-3" id="Fact-99461468957AE01113A1AD8674449AD8" unitRef="usd">81228000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3QTD_us-gaap_ProductOrServiceAxis_cgnx_StandardProductsandServicesMember" decimals="-3" id="Fact-86A0FB34C9A145782FE6AD867543580A" unitRef="usd">150993000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3QTD_us-gaap_StatementGeographicalAxis_cgnx_AsiaExcludingChinaMember" decimals="-3" id="Fact-49B9B2974CE8519496E0AD85C5106659" unitRef="usd">25003000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3QTD_us-gaap_StatementGeographicalAxis_country_CN" decimals="-3" id="Fact-F73B120D30335AB90165AD85CB89AC3D" unitRef="usd">32796000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3QTD_us-gaap_StatementGeographicalAxis_us-gaap_AmericasMember" decimals="-3" id="Fact-39BD8595682D772B4EEEAD85D499FDF9" unitRef="usd">58830000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3QTD_us-gaap_StatementGeographicalAxis_us-gaap_EuropeMember" decimals="-3" id="Fact-4B237A544DB9DA511766AD85CCA241B7" unitRef="usd">115592000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3YTD" decimals="-3" id="Fact-106E0FDE488690F0B69FAD8675DA9EDF" unitRef="usd">613052000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3YTD_us-gaap_ProductOrServiceAxis_cgnx_ApplicationSpecificCustomerSolutionsMember" decimals="-3" id="Fact-7F90897290365F5F1382AD86743192B6" unitRef="usd">120033000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3YTD_us-gaap_ProductOrServiceAxis_cgnx_StandardProductsandServicesMember" decimals="-3" id="Fact-83D09E7CFDF4419E4B6FAD86742179BB" unitRef="usd">493019000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3YTD_us-gaap_StatementGeographicalAxis_cgnx_AsiaExcludingChinaMember" decimals="-3" id="Fact-69FC37C96633C4B03699AD85CD0271B3" unitRef="usd">79902000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3YTD_us-gaap_StatementGeographicalAxis_country_CN" decimals="-3" id="Fact-9056FB709BD9EBD47377AD85C4E9E90E" unitRef="usd">101130000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3YTD_us-gaap_StatementGeographicalAxis_us-gaap_AmericasMember" decimals="-3" id="Fact-6C089E0E077074107645AD85C7A9306B" unitRef="usd">189859000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="FD2018Q3YTD_us-gaap_StatementGeographicalAxis_us-gaap_EuropeMember" decimals="-3" id="Fact-B87FCE99561E173D1B94AD85CF3FF07D" unitRef="usd">242161000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
	<us-gaap:SalesRevenueNet contextRef="FD2017Q3QTD" decimals="-3" id="Fact-CD3A5ACA6BB75BB496A6E8FE50706D8C" unitRef="usd">266042000</us-gaap:SalesRevenueNet>
	<us-gaap:SalesRevenueNet contextRef="FD2017Q3QTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-669561101278D0FE361AAD838E118278" unitRef="usd">6303000</us-gaap:SalesRevenueNet>
	<us-gaap:SalesRevenueNet contextRef="FD2017Q3QTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-F09296FB31F08FED3CDCAD838E218361" unitRef="usd">259739000</us-gaap:SalesRevenueNet>
	<us-gaap:SalesRevenueNet contextRef="FD2017Q3YTD" decimals="-3" id="Fact-A747702DB94E55E785B2ED313B3F037B" unitRef="usd">583161000</us-gaap:SalesRevenueNet>
	<us-gaap:SalesRevenueNet contextRef="FD2017Q3YTD_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201409Member_us-gaap_StatementScenarioAxis_us-gaap_RestatementAdjustmentMember" decimals="-3" id="Fact-3A1F0F59728E466D844DAD838DE6D06F" unitRef="usd">15576000</us-gaap:SalesRevenueNet>
	<us-gaap:SalesRevenueNet contextRef="FD2017Q3YTD_us-gaap_StatementScenarioAxis_us-gaap_ScenarioPreviouslyReportedMember" decimals="-3" id="Fact-B8CD9FE4D2A9AB38C406AD838E350489" unitRef="usd">567585000</us-gaap:SalesRevenueNet>
	<us-gaap:SalesRevenueNet contextRef="FD2018Q3QTD" decimals="-3" id="Fact-8FE97FA0F36F5FFCADE2DCBA156D89A9" unitRef="usd">232221000</us-gaap:SalesRevenueNet>
	<us-gaap:SalesRevenueNet contextRef="FD2018Q3YTD" decimals="-3" id="Fact-E7AB7530B2735EEEAA6767D8A14F88B6" unitRef="usd">613052000</us-gaap:SalesRevenueNet>
	<us-gaap:SellingGeneralAndAdministrativeExpense contextRef="FD2017Q3QTD" decimals="-3" id="Fact-1DBBBCAD96A45EF2BC3B2EC626357051" unitRef="usd">61054000</us-gaap:SellingGeneralAndAdministrativeExpense>
	<us-gaap:SellingGeneralAndAdministrativeExpense contextRef="FD2017Q3YTD" decimals="-3" id="Fact-7F45F320024254A4876905C711556F97" unitRef="usd">160093000</us-gaap:SellingGeneralAndAdministrativeExpense>
	<us-gaap:SellingGeneralAndAdministrativeExpense contextRef="FD2018Q3QTD" decimals="-3" id="Fact-C858CA7967705CF1A6CAB6B88B9C2960" unitRef="usd">65817000</us-gaap:SellingGeneralAndAdministrativeExpense>
	<us-gaap:SellingGeneralAndAdministrativeExpense contextRef="FD2018Q3YTD" decimals="-3" id="Fact-ECFF5081D37E5988896385038373D773" unitRef="usd">196266000</us-gaap:SellingGeneralAndAdministrativeExpense>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="FD2018Q3YTD_us-gaap_PlanNameAxis_cgnx_GeneralStockOptionPlanMember" id="Fact-E20634D4AAA950949EBB1958FBB9BA0B">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod contextRef="FD2018Q3YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember" id="Fact-5DB37AD3C1065CB482A489AECF9B6D6F" unitRef="shares" xsi:nil="true" />
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue contextRef="FD2018Q3YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember" id="Fact-4C0056935FBA5383ADF81EB591EFD6A9" unitRef="usdPerShare" xsi:nil="true" />
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod contextRef="FD2018Q3YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember" id="Fact-96BE577F239A5459BB09FF920AAA55DC" unitRef="shares" xsi:nil="true" />
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue contextRef="FD2018Q3YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember" id="Fact-17497A3180495AFEA4802A044975C60F" unitRef="usdPerShare" xsi:nil="true" />
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber contextRef="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember" decimals="-3" id="Fact-E890B19499565DB686440297B44706E5" unitRef="shares">20000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber contextRef="FI2018Q3_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember" decimals="-3" id="Fact-AEAD18DDAB2258B08C3B039B2B1B6DA2" unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue contextRef="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember" decimals="2" id="Fact-12F034974B03563F8F5D5FF2464A9FC0" unitRef="usdPerShare">17.03</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue contextRef="FI2018Q3_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember" decimals="2" id="Fact-FE97E2FFC302509E872EB37128F13FE2" unitRef="usdPerShare">0.00</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod contextRef="FD2018Q3YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember" decimals="-3" id="Fact-6306AFB13E2E5759A6EC91B453236BBC" unitRef="shares">20000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue contextRef="FD2018Q3YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember" decimals="2" id="Fact-B4F0AAEDF5C35BD293DD8F77B2085A85" unitRef="usdPerShare">17.03</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="FD2017Q3QTD" decimals="4" id="Fact-9B6D7F9E78BF5F2A9A48F014495EFCA5" unitRef="number">0.0039</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="FD2017Q3YTD" decimals="4" id="Fact-F0DEB42939635EAD868A5971D9C37FE6" unitRef="number">0.0039</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="FD2018Q3QTD" decimals="4" id="Fact-A641D3471F3A513391D39D6280ADB4C6" unitRef="number">0.0032</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="FD2018Q3YTD" decimals="4" id="Fact-A0A4DC596EED5DA38ECC6C50A00637F4" unitRef="number">0.0032</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="FD2017Q3QTD" decimals="2" id="Fact-A5B50B29919B5BBAA7AF61A0331A3012" unitRef="number">0.41</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="FD2017Q3YTD" decimals="2" id="Fact-9EED4AB6437B58C6A72B04F161D9BE7C" unitRef="number">0.41</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="FD2018Q3QTD" decimals="2" id="Fact-8D1F323DC8B55874B24FC0A6884D2869" unitRef="number">0.39</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="FD2018Q3YTD" decimals="2" id="Fact-8BB13E9A9A3750B8A267C7544C73582A" unitRef="number">0.39</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="FD2017Q3QTD" decimals="3" id="Fact-99AC9EDD4D59539398059B6E9C5CC23A" unitRef="number">0.024</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="FD2017Q3YTD" decimals="3" id="Fact-69043D7A461250DCA35C7F88CFA42A00" unitRef="number">0.024</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="FD2018Q3QTD" decimals="3" id="Fact-D34C7CF204CD57B19EB13AB3A6AA6D35" unitRef="number">0.029</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="FD2018Q3YTD" decimals="3" id="Fact-EC70C62599BC5EC88D0F723CD35E5A50" unitRef="number">0.029</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant contextRef="FI2018Q3_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" decimals="INF" id="Fact-DB7DBF3987FC54C88A53EA018BB7EABD" unitRef="shares">20246002</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber contextRef="FI2018Q3" decimals="-3" id="Fact-91F15F1180E45A0E9EA8D49BADBE77D4" unitRef="shares">4327000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice contextRef="FI2018Q3" decimals="2" id="Fact-E84AC961A98F5B1D8744156EBA4FCA48" unitRef="usdPerShare">20.14</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod contextRef="FD2018Q3YTD" decimals="-3" id="Fact-43C7CFB4CAC85C9BAA536A5B81F711DB" unitRef="shares">429000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice contextRef="FD2018Q3YTD" decimals="2" id="Fact-394566D6EEA25AA5A2FD24D20A25589A" unitRef="usdPerShare">33.24</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod contextRef="FD2018Q3YTD" decimals="-3" id="Fact-81DE1DA88E965C2A8C01B1BFC521C07E" unitRef="shares">2318000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue contextRef="FD2017Q3QTD" decimals="2" id="Fact-80F37BEDC7FB5F1891121F5C2DFC2D4F" unitRef="usdPerShare">14.80</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue contextRef="FD2017Q3YTD" decimals="2" id="Fact-151F51A315405165BD13FEEE98122AEC" unitRef="usdPerShare">14.97</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue contextRef="FD2018Q3QTD" decimals="2" id="Fact-228740575C2751BCAEA114425B748118" unitRef="usdPerShare">22.52</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue contextRef="FD2018Q3YTD" decimals="2" id="Fact-410125D8C4955BD0A639EC540302C6C3" unitRef="usdPerShare">21.70</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue contextRef="FI2018Q3" decimals="-3" id="Fact-C7F8B462DE565C5DADD2E0FB54753B2A" unitRef="usd">329301000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="FI2017Q4" decimals="-3" id="Fact-B796E19EE8395EB89424F6027709BB6B" unitRef="shares">12726000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="FI2018Q3" decimals="-3" id="Fact-DF5ACFAEC76952E38573D4A7D52176D4" unitRef="shares">13181000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice contextRef="FI2017Q4" decimals="2" id="Fact-7C60F64704DA5EF58E854D6E6ECA680B" unitRef="usdPerShare">25.24</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice contextRef="FI2018Q3" decimals="2" id="Fact-0549FF8A6B1D567E9D399EB8442750CB" unitRef="usdPerShare">31.11</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber contextRef="FI2018Q3" decimals="-3" id="Fact-8F26DBD342B7537980194539961C4533" unitRef="shares">11916000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue contextRef="FI2018Q3" decimals="-3" id="Fact-891420C5F9725C499CCC98F315113707" unitRef="usd">310772000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice contextRef="FI2018Q3" decimals="2" id="Fact-579A7DC2445C5910A8C9F1B60C219680" unitRef="usdPerShare">29.99</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
	<us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod contextRef="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" decimals="-3" id="Fact-B56AADF495ED52FF8528084B55188368" unitRef="shares">1434000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod>
	<us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice contextRef="FD2018Q3YTD" decimals="2" id="Fact-8B3B38856D805D1AA83C12D421818F76" unitRef="usdPerShare">18.06</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
	<us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice contextRef="FD2018Q3YTD" decimals="2" id="Fact-CF198DCB3789570E87E69B5EBB688C7F" unitRef="usdPerShare">55.66</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
	<us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested contextRef="FI2018Q3_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember" decimals="-3" id="Fact-AB43008B912B515CA97E7D4CDE373A5D" unitRef="usd">0</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested>
	<us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested contextRef="FD2018Q3YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember" decimals="-3" id="Fact-326737BDBAF157258561B038EFC49545" unitRef="usd">993000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
	<us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="FD2017Q3QTD" id="Fact-123EBF37C90E5AEE9C81123B507BC1BE">P5Y1M6D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
	<us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="FD2017Q3YTD" id="Fact-BB4C2E52A9A856278A82C277770FC891">P5Y3M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
	<us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="FD2018Q3QTD" id="Fact-3D297AF38CD756BFB0E5A3CBB320AFDF">P5Y4M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
	<us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="FD2018Q3YTD" id="Fact-4490F65054BC5712A7C67219EACB4A92">P5Y3M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
	<us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="FD2018Q3YTD" id="Fact-5BAF1C8360CD538AB81A939C8C8A1B52">P6Y4D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
	<us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="FD2018Q3YTD" id="Fact-AE4AF2AF9D8F596FBA2E1E0B823AE4B1">P7Y5M23D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
	<us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1 contextRef="FD2018Q3YTD" id="Fact-ED4AC14543E152899A4FBBB0DE6B24E1">P7Y4M13D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
	<us-gaap:StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss contextRef="FD2018Q3YTD" decimals="-3" id="Fact-443569D2ECC65F809A7D4E18858D6990" unitRef="usd">-117000</us-gaap:StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss>
	<us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised contextRef="FD2018Q3YTD" decimals="-3" id="Fact-DCC2D2E96CCE5290B5C9C3813103DC3B" unitRef="shares">1434000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
	<us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="FD2018Q3YTD" decimals="-3" id="Fact-30B394BCE65E5BD8B45B79120E2FB1A8" unitRef="usd">25882000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
	<us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" decimals="-3" id="Fact-C2334E53945E5303B68004FA955748E0" unitRef="usd">25879000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
	<us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" decimals="-3" id="Fact-8BE14A275B6E598CBDF9676DEE7AD11A" unitRef="usd">3000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
	<us-gaap:StockOptionPlanExpense contextRef="FD2017Q3YTD" decimals="-3" id="Fact-2FEAF9F79E7957BFA4CF39026A10FBCA" unitRef="usd">23355000</us-gaap:StockOptionPlanExpense>
	<us-gaap:StockOptionPlanExpense contextRef="FD2018Q3YTD" decimals="-3" id="Fact-091FA0D909D35F52B1A49B21A1C7C516" unitRef="usd">31339000</us-gaap:StockOptionPlanExpense>
	<us-gaap:StockRepurchaseProgramAuthorizedAmount1 contextRef="I2015Q4SD_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramApril2017Member" decimals="INF" id="Fact-C89C99B7E2F75C69BA189A575578C8BC" unitRef="usd">100000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
	<us-gaap:StockRepurchaseProgramAuthorizedAmount1 contextRef="I2018Q1Feb28_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramFebruary2018Member" decimals="INF" id="Fact-195891FE137150F59C51DB25EBE11C74" unitRef="usd">150000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
	<us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1 contextRef="FI2018Q3_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramFebruary2018Member" decimals="-3" id="Fact-03C922C902A356A0B878860D423FF55A" unitRef="usd">52938000</us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1>
	<us-gaap:StockRepurchasedDuringPeriodShares contextRef="FD2018Q3YTD_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramApril2017Member" decimals="-3" id="Fact-1CEFDDADC5865D7288CAB1B8F5003F41" unitRef="shares">803000</us-gaap:StockRepurchasedDuringPeriodShares>
	<us-gaap:StockRepurchasedDuringPeriodShares contextRef="FD2018Q3YTD_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramFebruary2018Member" decimals="-3" id="Fact-1B9FE46FC80B5BD3B33ADE37D9DF0068" unitRef="shares">1947000</us-gaap:StockRepurchasedDuringPeriodShares>
	<us-gaap:StockRepurchasedDuringPeriodShares contextRef="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" decimals="-3" id="Fact-FB2DED8A479F5EAFAD2AC6653A83A931" unitRef="shares">2750000</us-gaap:StockRepurchasedDuringPeriodShares>
	<us-gaap:StockRepurchasedDuringPeriodValue contextRef="FD2018Q3YTD" decimals="-3" id="Fact-658ED2A06CB054CD9E578EF62588F444" unitRef="usd">142262000</us-gaap:StockRepurchasedDuringPeriodValue>
	<us-gaap:StockRepurchasedDuringPeriodValue contextRef="FD2018Q3YTD_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramApril2017Member" decimals="-3" id="Fact-A0C5359E3F5052668DC6C04472AD02D0" unitRef="usd">45200000</us-gaap:StockRepurchasedDuringPeriodValue>
	<us-gaap:StockRepurchasedDuringPeriodValue contextRef="FD2018Q3YTD_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramApril2017andFebruary2018Member" decimals="-3" id="Fact-10181A5F5BF5529DB2DEEC78AA7F27FA" unitRef="usd">142262000</us-gaap:StockRepurchasedDuringPeriodValue>
	<us-gaap:StockRepurchasedDuringPeriodValue contextRef="FD2018Q3YTD_us-gaap_ShareRepurchaseProgramAxis_cgnx_RepurchaseProgramFebruary2018Member" decimals="-3" id="Fact-8DA3AE73785F55DB9580296517D02D5F" unitRef="usd">97062000</us-gaap:StockRepurchasedDuringPeriodValue>
	<us-gaap:StockRepurchasedDuringPeriodValue contextRef="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" decimals="-3" id="Fact-28A9D1DA4B1D5F979E047A5022F58C49" unitRef="usd">5000</us-gaap:StockRepurchasedDuringPeriodValue>
	<us-gaap:StockRepurchasedDuringPeriodValue contextRef="FD2018Q3YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" decimals="-3" id="Fact-D8805574FB7E51F1A20503D3864966F4" unitRef="usd">142257000</us-gaap:StockRepurchasedDuringPeriodValue>
	<us-gaap:StockholdersEquity contextRef="FI2017Q4" decimals="-3" id="Fact-5BA60781C27E541985F34AC4D5928843" unitRef="usd">1095673000</us-gaap:StockholdersEquity>
	<us-gaap:StockholdersEquity contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" decimals="-3" id="Fact-26E92514452252BCA6E58950AB985DE5" unitRef="usd">-34599000</us-gaap:StockholdersEquity>
	<us-gaap:StockholdersEquity contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" decimals="-3" id="Fact-A2A5ED33645D5432B91CC404762E4307" unitRef="usd">461338000</us-gaap:StockholdersEquity>
	<us-gaap:StockholdersEquity contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" decimals="-3" id="Fact-879DE4056562593299B1EC62CD81F696" unitRef="usd">347000</us-gaap:StockholdersEquity>
	<us-gaap:StockholdersEquity contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" decimals="-3" id="Fact-D54A15905F735534B9ED3770C8F98B43" unitRef="usd">668587000</us-gaap:StockholdersEquity>
	<us-gaap:StockholdersEquity contextRef="FI2018Q3" decimals="-3" id="Fact-FFECC989D1F250BD8A3EC168064D1EC9" unitRef="usd">1149444000</us-gaap:StockholdersEquity>
	<us-gaap:StockholdersEquity contextRef="FI2018Q3_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" decimals="-3" id="Fact-0B1D30357D045D29A91485B82A86D0D1" unitRef="usd">-40392000</us-gaap:StockholdersEquity>
	<us-gaap:StockholdersEquity contextRef="FI2018Q3_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" decimals="-3" id="Fact-B88EB1D9B9BB51DB8BD394F2BD40148A" unitRef="usd">518556000</us-gaap:StockholdersEquity>
	<us-gaap:StockholdersEquity contextRef="FI2018Q3_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" decimals="-3" id="Fact-0169CE7F1E255E3C80DEDC76A2BE73EC" unitRef="usd">345000</us-gaap:StockholdersEquity>
	<us-gaap:StockholdersEquity contextRef="FI2018Q3_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" decimals="-3" id="Fact-025F2618947C5D9BBE0A2CCB3299A574" unitRef="usd">670935000</us-gaap:StockholdersEquity>
	<us-gaap:UnbilledReceivablesCurrent contextRef="FI2017Q4" decimals="-3" id="Fact-0C0EAB8C63925C6EAEB4436DC1FF11E6" unitRef="usd">7454000</us-gaap:UnbilledReceivablesCurrent>
	<us-gaap:UnbilledReceivablesCurrent contextRef="FI2018Q3" decimals="-3" id="Fact-04B0C92045AB59AA802FE2906965E4D8" unitRef="usd">13948000</us-gaap:UnbilledReceivablesCurrent>
	<us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued contextRef="FI2018Q3" decimals="-3" id="Fact-FB0229C0BDEB526DA8F991E298017F0E" unitRef="usd">773000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
	<us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="FD2017Q3QTD" decimals="-3" id="Fact-F17EDF5388465A8DA90FF1DA624C7A11" unitRef="shares">6120000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
	<us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="FD2017Q3YTD" decimals="-3" id="Fact-E86F3DACF40854D593125AC35F25D367" unitRef="shares">6072000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
	<us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="FD2018Q3QTD" decimals="-3" id="Fact-8FB42810758459D3B82C617ABF46F20B" unitRef="shares">5056000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
	<us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="FD2018Q3YTD" decimals="-3" id="Fact-CB54A67A1C3153F089525E09820981EA" unitRef="shares">5408000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
	<us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="FD2017Q3QTD" decimals="-3" id="Fact-4D23303947395F5C8C33F9D5A6CF3D05" unitRef="shares">179354000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
	<us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="FD2017Q3YTD" decimals="-3" id="Fact-5D0ED978A7915BAB9E6F2490877AF512" unitRef="shares">179124000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
	<us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="FD2018Q3QTD" decimals="-3" id="Fact-C9A0939F0192503D896657F4BDDE3B74" unitRef="shares">177245000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
	<us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="FD2018Q3YTD" decimals="-3" id="Fact-59B7CFE555525C67AF46EAEA689A945F" unitRef="shares">178021000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
	<us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="FD2017Q3QTD" decimals="-3" id="Fact-73A0549D57115836B9D5D379A2032E13" unitRef="shares">173234000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
	<us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="FD2017Q3YTD" decimals="-3" id="Fact-112F597005E955CF80320027C2F118E8" unitRef="shares">173052000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
	<us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="FD2018Q3QTD" decimals="-3" id="Fact-1BE9E6DFD62751F59BD98766C3875716" unitRef="shares">172189000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
	<us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="FD2018Q3YTD" decimals="-3" id="Fact-B0A504FE2FEF5EF2AF9C61E5F799AD4B" unitRef="shares">172613000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
	<cgnx:ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock contextRef="FD2018Q3YTD" id="Fact-0B2C049BCD175AE89E96F57AF327160D">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Cash, cash equivalents, and investments consisted of the following (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="8" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:63%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:16%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:16%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;"&gt;December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Cash&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;104,654&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;97,951&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Money market instruments&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,717&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,631&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Cash and cash equivalents&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;107,371&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;106,582&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;193,347&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;150,371&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;138,099&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;47,395&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;71,438&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;59,203&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;8,119&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;21,579&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;6,044&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,805&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Agency bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,969&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;10,608&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Short-term investments&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;420,016&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;297,961&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;176,007&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;296,014&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;60,111&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;71,727&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;32,711&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;23,459&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;6,318&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13,147&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Agency bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5,940&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;14,890&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;842&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4,204&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Long-term investments&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;281,929&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;423,441&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;809,316&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;827,984&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</cgnx:ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock>
	<cgnx:OutstandingForwardContractsTableTextBlock contextRef="FD2018Q3YTD" id="Fact-88E83136C94F5319A22410349DED2F15">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company had the following outstanding forward contracts (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="14" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:47%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:10%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Currency&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Notional&lt;br clear="none"/&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;USD&lt;br clear="none"/&gt;Equivalent&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Notional&lt;br clear="none"/&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;USD&lt;br clear="none"/&gt;Equivalent&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="7" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Derivatives Not Designated as Hedging Instruments:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Euro&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;19,500&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;22,602&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Japanese Yen&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;455,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;4,018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;455,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4,049&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;British Pound&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,100&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,742&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,650&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,232&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Hungarian Forint&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;700,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,513&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;545,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,110&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Korean Won&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,050,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1,847&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,825,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,708&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Taiwanese Dollar&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;49,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1,615&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;37,725&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,278&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Canadian Dollar&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;800&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;616&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Singapore Dollar&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;760&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;557&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Swiss Franc&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,365&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,401&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</cgnx:OutstandingForwardContractsTableTextBlock>
	<us-gaap:CompensationRelatedCostsGeneralTextBlock contextRef="FD2018Q3YTD" id="Fact-7597CE71402956998425D11C33D68C1D">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Stock-Based Compensation Expense&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company&amp;#8217;s share-based payments that result in compensation expense consist of stock option grants and restricted stock awards.  As of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, the Company had &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;20,246,002&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; shares available for grant.  Stock options are granted with an exercise price equal to the market value of the Company&amp;#8217;s common stock at the grant date and generally vest over &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;four&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; or five years based upon continuous service and expire &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ten&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; years from the grant date.  Vesting of restricted stock awards may be based on continuing employment and/or achievement of pre-established performance goals and objectives.  Vesting for performance-based restricted stock awards and time-based restricted stock awards must not be less than &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;one&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; year and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;three&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; years, respectively; however, awards with time-based vesting may become vested incrementally over such three-year period.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the Company&amp;#8217;s stock option activity for the &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;nine&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;:&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="13" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:39%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:15%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Shares&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(in&amp;#160;thousands)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Weighted-&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Average&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Exercise&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Price&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Weighted-&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Average&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Remaining&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Contractual&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Term&amp;#160;(in&amp;#160;years)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Aggregate&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Intrinsic&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(in&amp;#160;thousands)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Outstanding as of December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;12,726&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;25.24&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Granted&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,318&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;55.66&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Exercised&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(1,434&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;18.06&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Forfeited or expired&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(429&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;33.24&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Outstanding as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;13,181&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;31.11&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;7.48&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;329,301&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Exercisable as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;4,327&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;20.14&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;6.01&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;154,377&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Options vested or expected to vest as of September 30, 2018 (1)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;11,916&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;29.99&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;7.37&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;310,772&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;padding-left:48px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;(1) In addition to the vested options, the Company expects a portion of the unvested options to vest at some point in the future.  Options expected to vest are calculated by applying an estimated forfeiture rate to the unvested options.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The fair values of stock options granted in each period presented were estimated using the following weighted-average assumptions:&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:39%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months&amp;#160;Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Risk-free rate&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2.9&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2.4&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2.9&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2.4&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Expected dividend yield&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;0.32&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;0.39&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;0.32&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;0.39&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Expected volatility&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;39&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;41&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;39&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;41&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Expected term (in years)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5.4&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5.1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5.3&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5.3&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Risk-free rate&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The risk-free rate was based upon a treasury instrument whose term was consistent with the contractual term of the option.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Expected dividend yield&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Generally, the current dividend yield is calculated by annualizing the cash dividend declared by the Company&amp;#8217;s Board of Directors and dividing that result by the closing stock price on the grant date.&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Expected volatility&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The expected volatility was based upon a combination of historical volatility of&amp;#160;the Company&amp;#8217;s common stock over the contractual term of the option and implied volatility for traded options of the Company&amp;#8217;s stock.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Expected term&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The expected term was derived from the binomial lattice model from the impact of events that trigger exercises over time.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company stratifies its employee population into &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;two&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; groups: one consisting of senior management and another consisting of all other employees.  The Company currently applies an estimated annual forfeiture rate of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8%&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; to all unvested options for senior management and a rate of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;12%&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; for all other employees.  Each year during the first quarter, the company revises its estimated forfeiture rate.  This resulted in an increase to compensation expense of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$1,283,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; in 2018 and a decrease to compensation expense of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$673,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; in 2017.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The weighted-average grant-date fair values of stock options granted during the three-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; were &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$22.52&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$14.80&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively.  The weighted-average grant-date fair values of stock options granted during the nine-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; were &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$21.70&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$14.97&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively. &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The total intrinsic values of stock options exercised for the three-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; were &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$17,985,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$28,462,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively.  The total intrinsic values of stock options exercised for the nine-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; were &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$50,975,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$100,913,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively.  The total fair values of stock options vested for the three-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; were &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$997,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$844,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively.  The total fair values of stock options vested for the nine-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; were &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$27,557,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$19,557,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively.   &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, total unrecognized compensation expense related to non-vested stock options was &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$50,387,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, which is expected to be recognized over a weighted-average period of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1.61&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; years.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the Company's restricted stock activity for the nine-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;: &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="11" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:48%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:15%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:16%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Shares                   (in thousands)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Weighted-Average     Grant Fair Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Aggregate Intrinsic Value                  (in thousands)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Nonvested as of December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;20&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;17.03&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Granted&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Vested&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(20&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;17.03&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;993&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Forfeited or expired&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Nonvested as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The fair values of restricted stock awards granted were determined based upon the market value of the Company's common stock at the time of grant.  The initial cost was then amortized over the period of vesting until the restrictions lapsed.  These restricted shares became fully vested in 2018.  Participants were entitled to dividends on the restricted stock awards, but only received those amounts if the shares vested.  The sale or transfer of these shares was restricted during the vesting period.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; were &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$9,143,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$1,654,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively, and for the three-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; were &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$8,026,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$2,639,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively.  The total stock-based compensation expense and the related income tax benefit recognized for the nine-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; were &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$31,339,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$5,608,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively, and for the nine-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; were &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$23,355,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$7,661,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively.  &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;No&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; compensation expense was capitalized as of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; or &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;December&amp;#160;31, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table presents the stock-based compensation expense by caption for each period presented on the Consolidated Statements of Operations (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="16" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:38%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Cost of revenue&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;544&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;520&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1,898&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,404&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Research, development, and engineering&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;3,197&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,765&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;11,166&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,090&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Selling, general, and administrative&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5,402&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4,741&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;18,275&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13,861&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;9,143&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,026&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;31,339&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;23,355&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:CompensationRelatedCostsGeneralTextBlock>
	<us-gaap:DeferredRevenueByArrangementDisclosureTextBlock contextRef="FD2018Q3YTD" id="Fact-0FD01BC762CCB3E89911AD7C79D026C3">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the deferred revenue and customer deposits activity for the nine-month period ended September 30, 2018 (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.609375%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="4" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:80%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:18%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Amount&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9,420&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Increases to deferred revenue and customer deposits&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;55,408&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Recognition of revenue&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(50,590&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Foreign exchange rate changes&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(986&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;13,252&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:DeferredRevenueByArrangementDisclosureTextBlock>
	<us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock contextRef="FD2018Q3YTD" id="Fact-7C0FF968DAAE57D49A0529DA4D6BF853">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Derivative Instruments&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company&amp;#8217;s foreign currency risk management strategy is principally designed to mitigate the potential financial impact of changes in the value of transactions and balances denominated in foreign currencies resulting from changes in foreign currency exchange rates.  Currently, the Company enters into &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;two&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; types of hedges to manage this risk.  The first are economic hedges which utilize foreign currency forward contracts with maturities of up to &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;45&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; days to manage the exposure to fluctuations in foreign currency exchange rates arising primarily from foreign-denominated receivables and payables.  The gains and losses on these derivatives are intended to be offset by the changes in the fair value of the assets and liabilities being hedged.  These economic hedges are not designated as hedging instruments for hedge accounting treatment.  The second are cash flow hedges which utilize foreign currency forward contracts with maturities of up to &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;18 months&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; to hedge specific forecasted transactions of the Company's foreign subsidiaries with the goal of protecting the Company's budgeted revenues and expenses against foreign currency exchange rate changes compared to its budgeted rates.  These cash flow hedges are designated as hedging instruments for hedge accounting treatment. &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company had the following outstanding forward contracts (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="14" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:47%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:10%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Currency&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Notional&lt;br clear="none"/&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;USD&lt;br clear="none"/&gt;Equivalent&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Notional&lt;br clear="none"/&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;USD&lt;br clear="none"/&gt;Equivalent&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="7" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Derivatives Not Designated as Hedging Instruments:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Euro&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;19,500&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;22,602&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Japanese Yen&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;455,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;4,018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;455,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4,049&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;British Pound&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,100&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,742&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,650&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,232&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Hungarian Forint&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;700,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,513&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;545,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,110&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Korean Won&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,050,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1,847&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,825,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,708&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Taiwanese Dollar&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;49,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1,615&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;37,725&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,278&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Canadian Dollar&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;800&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;616&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Singapore Dollar&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;760&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;557&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Swiss Franc&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,365&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,401&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Information regarding the fair value of the outstanding forward contracts was as follows (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="20" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:17%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:10%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Asset Derivatives&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Liability Derivatives&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Balance&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Fair Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Balance&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Fair Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Sheet&lt;br clear="none"/&gt;Location&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Sheet&lt;br clear="none"/&gt;Location&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="10" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Derivatives Not Designated as Hedging Instruments:&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Economic hedge forward contracts&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Prepaid&amp;#160;expenses&amp;#160;and other current assets&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;16&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Accrued expenses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;91&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table presents the gross activity for all derivative assets and liabilities which were presented on a net basis on the Consolidated Balance Sheets due to the right of offset with each counterparty (in thousands):&lt;/font&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="19" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:18%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:19%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Asset Derivatives&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Liability Derivatives&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;December&amp;#160;31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;December&amp;#160;31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gross amounts of recognized assets&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;16&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gross amounts of recognized liabilities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;91&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gross amounts offset&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gross amounts offset&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Net amount of assets presented&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;16&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Net amount of liabilities presented&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;91&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Information regarding the effect of derivative instruments on the consolidated financial statements was as follows (in thousands):&lt;/font&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="18" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:22%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:21%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:10%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Location in Financial Statements&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Three-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="11" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Derivatives Designated as Hedging Instruments:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gains (losses) recorded in shareholders' equity (effective portion)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Accumulated other comprehensive income (loss), net of tax&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations (effective portion)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Revenue&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;56&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;10&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Research, development, and engineering expenses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Selling, general, and administrative expenses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Total gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;56&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gains (losses) recognized in current operations (ineffective portion and discontinued derivatives)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Foreign currency gain (loss)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="11" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Derivatives Not Designated as Hedging Instruments:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gains (losses) recognized in current operations&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Foreign currency gain (loss)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;299&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;43&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(366&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;139&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock>
	<us-gaap:EarningsPerShareTextBlock contextRef="FD2018Q3YTD" id="Fact-8C76C53EB9545FC2B93B827C49D9E33E">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Weighted-Average Shares&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Weighted-average shares were calculated as follows (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:39%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Basic weighted-average common shares outstanding&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;172,189&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;173,234&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;172,613&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;173,052&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Effect of dilutive stock options&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5,056&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,120&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5,408&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,072&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Weighted-average common and common-equivalent shares outstanding&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;177,245&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;179,354&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;178,021&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;179,124&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Stock options to purchase &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,796,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,353,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; shares of common stock, on a weighted-average basis, were outstanding during the three-month and nine-month periods ended September 30, 2018, respectively, and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;466,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3,108,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; for the same periods in 2017, but were not included in the calculation of dilutive net income per share because they were anti-dilutive.&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
	<us-gaap:FairValueDisclosuresTextBlock contextRef="FD2018Q3YTD" id="Fact-CA7AA195673652A0A3B1451AAFAA9FEE">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Fair Value Measurements&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Financial Assets and Liabilities that are Measured at Fair Value on a Recurring Basis&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the financial assets and liabilities required to be measured at fair value on a recurring basis as of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:50%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Quoted&amp;#160;Prices&amp;#160;in&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Active Markets&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;for Identical&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Assets (Level 1)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Significant&amp;#160;    Other&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Observable&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Inputs (Level 2)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;&lt;br clear="none"/&gt;Unobservable&lt;br clear="none"/&gt;Inputs                                                                                                                                                                             (Level 3)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Assets:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Money market instruments&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,717&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;314,106&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;226,058&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;131,549&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;14,437&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Agency bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,909&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,886&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Economic hedge forward contracts&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Liabilities:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Economic hedge forward contracts&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;91&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Contingent consideration liabilities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,507&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company&amp;#8217;s money market instruments are reported at fair value based upon the daily market price for identical assets in active markets, and are therefore classified as Level 1. &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company&amp;#8217;s debt securities and forward contracts are reported at fair value based upon model-driven valuations in which all significant inputs are observable or can be derived from or corroborated by observable market data for substantially the full term of the asset or liability, and are therefore classified as Level 2.  Management is responsible for estimating the fair value of these financial assets and liabilities, and in doing so, considers valuations provided by a large, third-party pricing service.  For debt securities, this service maintains regular contact with market makers, brokers, dealers, and analysts to gather information on market movement, direction, trends, and other specific data.  They use this information to structure yield curves for various types of debt securities and arrive at the daily valuations.  The Company's forward contracts are typically traded or executed in over-the-counter markets with a high degree of pricing transparency.  The market participants are generally large commercial banks.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company did not record an other-than-temporary impairment of these financial assets during the &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;nine&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company's contingent consideration liabilities are reported at fair value based upon probability-adjusted present values of the consideration expected to be paid using significant inputs that are not observable in the market and are therefore classified as Level 3.  Key assumptions used in these estimates include probability assessments with respect to the likelihood of achieving certain revenue milestones.  The fair values of these contingent consideration liabilities were calculated using discount rates consistent with the level of risk of achievement, and are remeasured each reporting period with changes in fair value recorded in "Other income (expense)" on the Consolidated Statements of Operations.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the activity for the Company's liability measured at fair value using Level 3 inputs for the nine-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="4" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:85%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3,557&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Fair value adjustment to Manatee contingent consideration&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(1,350&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Fair value adjustment to GVi contingent consideration&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,130&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Fair value adjustment to Chiaro contingent consideration&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;170&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Payment of GVi contingent consideration&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(1,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,507&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Non-financial Assets that are Measured at Fair Value on a Non-recurring Basis&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Non-financial assets such as property, plant and equipment, goodwill, and intangible assets are required to be measured at fair value only when an impairment loss is recognized.  The Company did not record an impairment charge related to these assets during the &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;nine&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and October 1, 2017.&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
	<us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock contextRef="FD2018Q3YTD" id="Fact-8D12838B68C4581FB8C4FFA66437C349">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the activity for the Company's liability measured at fair value using Level 3 inputs for the nine-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="4" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:85%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3,557&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Fair value adjustment to Manatee contingent consideration&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(1,350&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Fair value adjustment to GVi contingent consideration&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,130&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Fair value adjustment to Chiaro contingent consideration&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;170&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Payment of GVi contingent consideration&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(1,000&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,507&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock>
	<us-gaap:IncomeTaxDisclosureTextBlock contextRef="FD2018Q3YTD" id="Fact-52D580AADA7A5EF9A95F0629DB62849C">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Taxes&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;A reconciliation of the United States federal statutory corporate tax rate to the Company&amp;#8217;s income tax expense, or effective tax rate, was as follows:&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:39%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months&amp;#160;Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Income tax provision at federal statutory corporate tax rate&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;35&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;35&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;State income taxes, net of federal benefit&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Foreign tax rate differential&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(7&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(18&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(7&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(18&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Tax credit&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Discrete tax benefit related to Tax Act 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(9&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(4&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Discrete tax benefit related to stock option exercises&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(4&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(7&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(5&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(13&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Other discrete tax events&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(2&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(2&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Other&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Income tax provision&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;6&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;On December 22, 2017, the United States Congress passed and the President signed into law the Tax Cuts and Jobs Act of 2017 (Tax Act).  The Tax Act included a decrease in the U.S. federal statutory corporate tax rate from &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;35%&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; to &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;21%&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, a one-time transition tax on unrepatriated foreign earnings, and limits on certain deductions.  The Securities and Exchange Commission (SEC) released Staff Accounting Bulletin (SAB) No. 118 to provide guidance to companies on how to implement the accounting and disclosure changes as a result of the Tax Act.  The Company made what it considered to be a reasonable estimate of the impact of the Tax Act in its financial statements for the year ended December 31, 2017.  In the third quarter of 2018, the Company revised its estimate of the impact of the Tax Act based on additional regulatory guidance.  The effective tax rate, as a result, was reduced by &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;color:#000000;"&gt;9&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; percentage points and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;color:#000000;"&gt;4&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; percentage points for the three-month and nine-month period ended September 30, 2018, respectively.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;This significant estimate is highly judgmental and changes to this estimate could result in material charges or credits in future reporting periods.  The Company will continue to review the guidance at the Federal and State levels through the end of 2018 and additional revisions to the estimates of the impact of the Tax Act may be required in the fourth quarter of 2018 as regulatory guidance continues to develop, specifically at the individual State level.  The Tax Act subjects the Company to current tax on Global Intangible Low-Taxed Income (GILTI) earned by certain foreign subsidiaries.&amp;#160; The Company has made an accounting policy election to provide for the tax expense related to GILTI in the year the tax is incurred rather than recognize deferred taxes for these temporary differences.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The majority of income earned outside of the United States is permanently reinvested to provide funds for international expansion.  The Company is tax resident in numerous jurisdictions around the world and has identified its major jurisdictions as the United States, Ireland, and China.  The statutory tax rate is &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;12.5%&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; in Ireland and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;25%&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; in China, compared to the U.S. federal statutory corporate tax rate of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;21%&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;.  International rights to certain of the Company's intellectual property are held by a subsidiary whose legal jurisdiction does not tax this income, resulting in a foreign effective tax rate that is lower than the above mentioned statutory rates, although the reduced taxes overseas have been partially offset by changes in U.S. tax law.  These differences resulted in a decrease in the effective tax rate by &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;7&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; percentage points&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt; &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;for the three-month and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;nine&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, and a decrease in the effective tax rate by &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;18&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; percentage points for the three-month and nine-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The excess tax benefit arising from the difference between the deduction for tax purposes and the compensation cost recognized for financial reporting purposes from stock option exercises resulted in a decrease of the effective tax rate by &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;7&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; percentage points for the three-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively, and a decrease of the effective tax rate by &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; percentage points for the &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;nine&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively.  Certain reserves for income taxes and other provision-to-return adjustments resulted in a decrease of the effective tax rate by &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;color:#000000;"&gt;2&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; percentage points for both the three-month periods ended September 30, 2018 and October 1, 2017 and a decrease of the effective tax rate by &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;color:#000000;"&gt;1&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; percentage point for both the nine-month periods ended September 30, 2018 and October 1, 2017.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;On January 1, 2018, the Company adopted Accounting Standard Update (ASU) 2016-16, "Income Taxes - Intra-Entity Transfers of Assets Other than Inventory."  This Update requires the recognition of deferred income taxes for an intra-entity transfer of an asset other than inventory.  As a result of this ASU, the Company recorded &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$5,961,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; through a cumulative-effect adjustment directly to retained earnings at the beginning of fiscal year 2018.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;During the &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;nine&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, the Company recorded a &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$204,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; increase in reserves for income taxes, net of deferred tax benefit.  Estimated interest and penalties included in these amounts totaled &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$33,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; for the &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;nine&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company&amp;#8217;s reserve for income taxes, including gross interest and penalties, was &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$7,674,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; as of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, which included &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$6,646,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; classified as a non-current liability and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$1,028,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; recorded as a reduction to non-current deferred tax assets.  The amount of gross interest and penalties included in these balances was &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$773,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;.  If the Company&amp;#8217;s tax positions were sustained or the statutes of limitations related to certain positions expired, these reserves would be released and income tax expense would be reduced in a future period.  As a result of the expiration of certain statutes of limitations, there is a potential that a portion of these reserves could be released, which would decrease income tax expense by approximately &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$1,200,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; to &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$1,300,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; over the next twelve months.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company has defined its major tax jurisdictions as the United States, Ireland, and China, and within the United States, Massachusetts.  Within the United States, the tax years &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2015 through 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; remain open to examination by the Internal Revenue Service and various state tax authorities.  The tax years &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2014 through 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; remain open to examination by various taxing authorities in other jurisdictions in which the Company operates.&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
	<us-gaap:IntangibleAssetsDisclosureTextBlock contextRef="FD2018Q3YTD" id="Fact-FE1411869DE9541794F275EBB805E75D">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Intangible Assets&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Amortized intangible assets consisted of the following (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:53%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Gross&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Carrying&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Accumulated&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Amortization&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Net&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Carrying&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Distribution networks&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;38,060&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;38,060&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Completed technologies&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;13,687&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;6,010&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;7,677&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Customer relationships&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;8,607&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5,587&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;3,020&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Non-compete agreements&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;370&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;185&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;185&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;60,724&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;49,842&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;10,882&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:inherit;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Gross&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Carrying&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Accumulated&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Amortization&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Net&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Carrying&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Distribution networks&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;38,060&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;38,060&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Completed technologies&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13,687&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4,181&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9,506&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Customer relationships&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,607&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,202&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3,405&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Non-compete agreements&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;370&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;92&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;278&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;60,724&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;47,535&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13,189&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As of September 30, 2018, estimated future amortization expense related to intangible assets is as follows (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:82%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:15%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;font-weight:bold;text-decoration:underline;"&gt;Year Ended December&amp;#160;31,&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;font-weight:bold;"&gt;Amount&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Remainder of fiscal 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;769&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2019&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,701&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2020&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,185&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2021&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2022&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,691&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2023&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;989&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Thereafter&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;530&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;10,882&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:IntangibleAssetsDisclosureTextBlock>
	<us-gaap:InventoryDisclosureTextBlock contextRef="FD2018Q3YTD" id="Fact-4EE3FEB494965CA697B75EE5F22D91F0">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Inventories&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Inventories consisted of the following (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="8" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:63%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:16%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:16%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;"&gt;December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Raw materials&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;46,660&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;33,927&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Work-in-process&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;4,071&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,114&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Finished goods&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;43,304&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;31,882&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;94,035&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;67,923&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:InventoryDisclosureTextBlock>
	<us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock contextRef="FD2018Q3YTD" id="Fact-CB760120D4C351BBA4824F86E37A288E">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table presents the effective maturity dates of the Company&amp;#8217;s available-for-sale investments as of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.22027290448344%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="28" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:24%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;&amp;lt;1 year&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;1-2 Years&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;2-3 Years&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;3-4 Years&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;4-5 Years&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;5-7 Years&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Total&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;138,099&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;80,605&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;68,684&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;22,429&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,434&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,855&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;314,106&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;193,347&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;32,711&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;226,058&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;71,438&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;30,840&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,431&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;12,102&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,138&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,600&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;131,549&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,119&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,318&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;14,437&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Agency bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,969&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,940&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,909&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,044&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;842&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,886&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;420,016&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;151,316&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;74,115&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;40,471&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;6,572&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;9,455&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;701,945&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock>
	<us-gaap:InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock contextRef="FD2018Q3YTD" id="Fact-DED54A15FD965F3F901CE99E558CC12B">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Cash, Cash Equivalents, and Investments&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Cash, cash equivalents, and investments consisted of the following (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="8" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:63%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:16%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:16%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;"&gt;December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Cash&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;104,654&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;97,951&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Money market instruments&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,717&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,631&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Cash and cash equivalents&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;107,371&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;106,582&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;193,347&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;150,371&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;138,099&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;47,395&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;71,438&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;59,203&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;8,119&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;21,579&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;6,044&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,805&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Agency bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2,969&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;10,608&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Short-term investments&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;420,016&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;297,961&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;176,007&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;296,014&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;60,111&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;71,727&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;32,711&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;23,459&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;6,318&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13,147&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Agency bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5,940&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;14,890&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;842&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4,204&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Long-term investments&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;281,929&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;423,441&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;809,316&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;827,984&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills consist of debt securities issued by the U.S. government; corporate bonds consist of debt securities issued by both domestic and foreign companies; asset-backed securities consist of debt securities collateralized by pools of receivables or loans with credit enhancement; sovereign bonds consist of direct debt issued by foreign governments; municipal bonds consist of debt securities issued by state and local government entities; and agency bonds consist of domestic or foreign obligations of government agencies and government sponsored enterprises that have government backing. All securities are denominated in U.S. Dollars.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the Company&amp;#8217;s available-for-sale investments as of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="16" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:44%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Amortized&lt;br clear="none"/&gt;Cost&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Gross&lt;br clear="none"/&gt;Unrealized&lt;br clear="none"/&gt;Gains&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Gross&lt;br clear="none"/&gt;Unrealized&lt;br clear="none"/&gt;Losses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Fair&amp;#160;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Short-term:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;193,631&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(284&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;193,347&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;138,383&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;56&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(340&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;138,099&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;71,646&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(209&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;71,438&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,172&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(53&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,119&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,050&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(6&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,044&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Agency bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,969&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,969&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Long-term:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;175,881&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;469&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(343&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;176,007&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;60,276&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;33&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(198&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;60,111&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;32,718&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;7&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(14&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;32,711&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,286&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;32&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,318&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Agency bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,930&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;10&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,940&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;855&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(13&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;842&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;702,797&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;608&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(1,460&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;701,945&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the Company&amp;#8217;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="24" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:29%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="15" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Unrealized Loss Position For:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Less than 12 Months&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;12 Months or Greater&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Total&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Fair&amp;#160;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Unrealized&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Losses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Fair&amp;#160;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Unrealized&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Losses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Fair&amp;#160;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Unrealized&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Losses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;137,108&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(174&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;63,030&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(124&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;200,138&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(298&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;116,028&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(386&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;42,922&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(297&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;158,950&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(683&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;57,678&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(207&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;38,256&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(200&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;95,934&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(407&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3,527&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(6&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4,592&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(47&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,119&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(53&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,854&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(6&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;842&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(13&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3,696&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(19&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;317,195&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(779&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;149,642&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(681&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;466,837&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(1,460&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, the Company did not recognize any other-than-temporary impairment of these investments.  In its evaluation, management considered the type of security, the credit rating of the security, the length of time the security has been in a loss position, the size of the loss position, the Company's intent and ability to hold the security to expected recovery of value, and other meaningful information.  The Company does not intend to sell, and is unlikely to be required to sell, any of these available-for-sale investments before their effective maturity or market price recovery.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company recorded gross realized gains and gross realized losses on the sale of debt securities totaling &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$283,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$17,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively, during the three-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$306,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$43,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively, during the three-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;.  The Company recorded gross realized gains and gross realized losses on the sale of debt securities totaling &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$646,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$111,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively, during the nine-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$449,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$79,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, respectively, during the nine-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;.  These gains and losses are included in "Investment income" on the Consolidated Statement of Operations.  Prior to the sale of these securities, unrealized gains and losses for these debt securities, net of tax, are recorded in shareholders&amp;#8217; equity as accumulated other comprehensive income (loss).&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table presents the effective maturity dates of the Company&amp;#8217;s available-for-sale investments as of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.22027290448344%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="28" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:24%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;&amp;lt;1 year&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;1-2 Years&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;2-3 Years&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;3-4 Years&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;4-5 Years&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;5-7 Years&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Total&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;138,099&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;80,605&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;68,684&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;22,429&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,434&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,855&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;314,106&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;193,347&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;32,711&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;226,058&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;71,438&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;30,840&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,431&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;12,102&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,138&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,600&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;131,549&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,119&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,318&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;14,437&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Agency bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,969&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,940&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,909&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,044&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;842&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,886&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;420,016&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;151,316&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;74,115&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;40,471&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;6,572&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;9,455&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;701,945&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock>
	<us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="FD2018Q3YTD" id="Fact-ABC77C2D1B3D50DFA6AB83DFBDF23127">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;New Pronouncements&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2016-02 and 2018-11, "Leases"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2016-02 creates Topic 842, Leases.  The objective of this ASU is to increase transparency and comparability among organizations by recognizing lease assets and lease liabilities on the balance sheet, and disclosing key information about leasing arrangements.  This ASU applies to any entity that enters into a lease, although lessees will see the most significant changes.  The main difference between current GAAP and Topic 842 is the recognition of lease assets and lease liabilities on the balance sheet for those leases classified as operating leases under current GAAP.  Topic 842 distinguishes between finance leases and operating leases, which are substantially similar to the classification criteria for distinguishing between capital leases and operating leases under current GAAP.  For public companies, the guidance in ASU 2016-02 is effective for annual periods beginning after December 15, 2018, and interim periods within those fiscal years.  In July 2018, the Financial Accounting Standards Board issued ASU 2018-11 to amend ASU 2016-02 and provided an additional (and optional) transition method to adopt the new lease standard.  This transition method allows entities to apply the new lease standard at the adoption date and recognize a cumulative-effect adjustment to the opening balance of retained earnings in the period of adoption instead of using the original modified retrospective transition method of adoption which required the restatement of all prior period financial statements.  Under this new transition method, the comparative periods presented in the financial statements will continue to be in accordance with current GAAP (Topic 840, Leases).  Management will adopt the new lease standard using this new transition method under ASU 2018-11.  As of the date of this report, management has determined the scope of leases subject to the new accounting requirements, has selected a software package to assist with compliance, and has reviewed all leases in scope.  Management is in the process of completing the implementation of the lease accounting software, training relevant employees, and finalizing the internal lease accounting policy and the related processes, internal controls, and disclosures. &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2016-13, "Financial Instruments - Measurement of Credit Losses"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2016-13 applies to all reporting entities holding financial assets that are not accounted for at fair value through net income (debt securities).&amp;#160; The amendments in this ASU eliminate the probable initial recognition threshold to recognize a credit loss under current GAAP and, instead, reflect an entity&amp;#8217;s current estimate of all expected credit losses.  In addition, this ASU broadens the information an entity must consider in developing the credit loss estimate, including the use of reasonable and supportable forecasted information.&amp;#160; The amendments in this ASU require that credit losses on available-for-sale debt securities be presented as an allowance rather than as a write-down and an entity will be able to record reversals of credit losses in current period net income.  For public companies, the guidance in ASU 2016-13 is effective for annual periods beginning after December 15, 2019, and interim periods within those fiscal years.&amp;#160; This ASU should be applied through a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is effective.&amp;#160; Management does not expect ASU 2016-13 to have a material impact on the Company's financial statements and disclosures.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2017-08, "Receivables - Nonrefundable Fees and Other Costs - Premium Amortization on Purchased Callable Debt Securities"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2017-08 applies to all reporting entities that hold investments in callable debt securities that have an amortized cost basis in excess of the amount that is repayable by the issuer at the earliest call date (that is, at a premium). The amendments in this ASU shorten the amortization period for certain callable debt securities held at a premium. Specifically, the amendments require the premium to be amortized to the earliest call date.  The amendments do not require an accounting change for securities held at a discount; the discount continues to be amortized to maturity.   Under current GAAP, premiums and discounts on callable debt securities generally are amortized to the maturity date. If that callable debt security is subsequently called, the entity records a loss equal to the unamortized premium.  The amendments in this ASU more closely align the amortization period of premiums and discounts to expectations incorporated in market pricing on the underlying securities.  For public companies, the amendments in ASU 2017-08 are effective for annual periods beginning after December 15, 2019, and interim reporting periods within fiscal years beginning after December 15, 2020.  This ASU should be applied on a modified retrospective basis through a cumulative-effect adjustment directly to retained earnings as of the beginning of the period of adoption, and, in the period of adoption, the entity is required to provide disclosures about the change in accounting principle.  Early adoption is permitted, including adoption in an interim period.  Management does not expect ASU 2017-08 to have a material impact on the Company's financial statements and disclosures.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2017-12, "Derivatives and Hedging - Targeted Improvements to Accounting for Hedging Activities"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2017-12 applies to all reporting entities that elect to apply hedge accounting.  The hedge accounting requirements under current GAAP sometimes do not permit an entity to properly recognize the economic results of the hedging strategy in the financial statements, and they are difficult to understand and interpret.  The amendments in this ASU make certain targeted improvements to simplify the application of the hedge accounting guidance.  Also, they better align the risk management activities and financial reporting for hedging relationships through changes to both 1) the designation and measurement guidance for qualifying hedging relationships and 2) the presentation of hedge results.  For public companies, the amendments in ASU 2017-12 are effective for annual reporting periods beginning after December 15, 2018, and interim reporting periods within those fiscal years.  Early adoption is permitted including adoption in any interim period after issuance of the ASU.  All transition requirements and elections should be applied to hedging relationships existing on the date of adoption.  The entity should apply a cumulative-effect adjustment related to eliminating the separate measurement of ineffectiveness to accumulated other comprehensive income with a corresponding adjustment to the opening balance of retained earnings as of the beginning of the fiscal year that an entity adopts the amendments in this ASU.  The amended presentation and disclosure guidance is required only prospectively.  Management does not expect ASU 2017-12 to have a material impact on the Company's financial statements and disclosures.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2018-01, "Land Easement Practical Expedient for Transition to Topic 842"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2018-01 applies to entities with land easements that exist or expired before an entity&amp;#8217;s adoption of Topic 842, provided that the entity does not account for those land easements as leases under Topic 840.  The amendments in this ASU permit an entity to elect an optional transition practical expedient to not evaluate under Topic 842 land easements that exist or expired before the entity&amp;#8217;s adoption of Topic 842 and that were not previously accounted for as leases under Topic 840.  An entity that elects this practical expedient should apply the practical expedient consistently to all of its existing or expired land easements that were not previously accounted for as leases under Topic 840.  Once an entity adopts Topic 842, it should apply that Topic prospectively to all new (or modified) land easements to determine whether the arrangement should be accounted for as a lease.  An entity that does not elect this practical expedient should evaluate all existing or expired land easements in connection with the adoption of the new lease requirements in Topic 842 to assess whether they meet the definition of a lease.  The amendments in this ASU affect the amendments in ASU 2016-02, which are not yet effective but may be early adopted.  The effective date and transition requirements for the amendments are the same as the effective date and transition requirements in ASU 2016-02, which is for annual periods beginning after December 15, 2018, and interim periods within those fiscal years. Management does not expect ASU 2018-01 to have a material impact on the Company's financial statements and disclosures.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2018-02, "Income Statement - Reporting Comprehensive Income"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2018-02 applies to entities required to apply the provisions of Topic 220, Income Statement - Reporting Comprehensive Income, and has items of other comprehensive income for which the related tax effects are presented in other comprehensive income as required by GAAP.  The amendments in this ASU allow a reclassification from accumulated other comprehensive income to retained earnings for stranded tax effects resulting from the Tax Cuts and Jobs Act of 2017 (the "Tax Act").  Consequently, the amendments eliminate the stranded tax effects resulting from the Tax Act and will improve the usefulness of information reported to financial statement users.  However, because the amendments only relate to the reclassification of the income tax effects of the Tax Act, the underlying guidance that requires the effect of a change in tax laws or rates to be included in income from continuing operations is not affected.  The amendments in this ASU also require certain disclosures about stranded tax effects.  The amendments in this ASU are effective for all entities for fiscal years beginning after December 15, 2018, and interim periods within those fiscal years.  Early adoption of the amendments in this ASU is permitted, including adoption in any interim period.  The amendments in this ASU should be applied either in the period of adoption or retrospectively to each period (or periods) in which the effect of the change in the U.S. federal corporate income tax rate in the Tax Act is recognized.  Management does not expect ASU 2018-02 to have a material impact on the Company's financial statements and disclosures. &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2018-07, "Compensation - Stock Compensation - Improvements to Nonemployee Share-Based Payment Accounting"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2018-07 applies to all entities that enter into share-based payment transactions for acquiring goods and services from nonemployees.  The amendments in this ASU expand the scope of Topic 718, Compensation - Stock Compensation, to include share-based payments transactions to nonemployees.  Changes to the accounting for nonemployee awards as a result of this ASU include: 1) equity-classified nonemployee share-based payment awards are measured at the grant date, instead of the previous requirement to remeasure the awards through the performance completion date, 2) for awards with performance conditions, compensation cost is recognized when the achievement of the performance condition is probable, rather than upon achievement, and 3) the current requirement to reassess the classification (equity or liability) for nonemployee awards upon vesting is eliminated.  This ASU clarifies that Topic 718 does not apply to financing transactions or awards granted to customers as part of a contract accounted for under Topic 606, Revenue from Contracts with Customers.  The amendments in this ASU are effective for public business entities for fiscal years beginning after December 15, 2018, and interim periods within those fiscal years.  An entity should only remeasure liability-classified awards that have not been settled by the date of adoption and equity-classified awards for which the measurement date has not been established through a cumulative-effect adjustment to retained earnings as of the beginning of the fiscal year of adoption.  Management does not expect ASU 2018-07 to have a material impact on the Company's financial statements and disclosures.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2018-15, "Intangibles - Goodwill and Other - Internal-Use Software"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2018-15 applies to entities that are a customer in a hosting arrangement that is a service contract.  The amendments  in this ASU align the requirements for capitalizing implementation costs incurred in a hosting arrangement that is a service contract with the requirements for capitalizing implementation costs incurred to develop or obtain internal-use software.  Accordingly, the amendments in this ASU require an entity in a hosting arrangement that is a service contract to follow the guidance in Subtopic 350-40 to determine which implementation costs to capitalize as an asset related to the service contract and which costs to expense. Further, it requires the entity to expense the capitalized implementation costs over the term of the hosting arrangement.  In addition, it requires the presentation of the expenses related to the capitalized implementation costs in the same line item in the statement of income as the fees associated with the hosting element of the arrangement and the classification of the payments for the capitalized implementation costs in the statement of cash flows in the same manner as the payments made for the fees associated with the hosting element.  The amendments in this ASU are effective for public entities for fiscal years beginning after December 15, 2019, and interim periods within those fiscal years, with early adoption permitted.  Management does not expect ASU 2018-15 to have a material impact on the Company's financial statement and disclosures.&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
	<us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="FD2018Q3YTD" id="Fact-03625A689C1F5213B5575D4995BC92E8">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2016-02 and 2018-11, "Leases"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2016-02 creates Topic 842, Leases.  The objective of this ASU is to increase transparency and comparability among organizations by recognizing lease assets and lease liabilities on the balance sheet, and disclosing key information about leasing arrangements.  This ASU applies to any entity that enters into a lease, although lessees will see the most significant changes.  The main difference between current GAAP and Topic 842 is the recognition of lease assets and lease liabilities on the balance sheet for those leases classified as operating leases under current GAAP.  Topic 842 distinguishes between finance leases and operating leases, which are substantially similar to the classification criteria for distinguishing between capital leases and operating leases under current GAAP.  For public companies, the guidance in ASU 2016-02 is effective for annual periods beginning after December 15, 2018, and interim periods within those fiscal years.  In July 2018, the Financial Accounting Standards Board issued ASU 2018-11 to amend ASU 2016-02 and provided an additional (and optional) transition method to adopt the new lease standard.  This transition method allows entities to apply the new lease standard at the adoption date and recognize a cumulative-effect adjustment to the opening balance of retained earnings in the period of adoption instead of using the original modified retrospective transition method of adoption which required the restatement of all prior period financial statements.  Under this new transition method, the comparative periods presented in the financial statements will continue to be in accordance with current GAAP (Topic 840, Leases).  Management will adopt the new lease standard using this new transition method under ASU 2018-11.  As of the date of this report, management has determined the scope of leases subject to the new accounting requirements, has selected a software package to assist with compliance, and has reviewed all leases in scope.  Management is in the process of completing the implementation of the lease accounting software, training relevant employees, and finalizing the internal lease accounting policy and the related processes, internal controls, and disclosures. &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2016-13, "Financial Instruments - Measurement of Credit Losses"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2016-13 applies to all reporting entities holding financial assets that are not accounted for at fair value through net income (debt securities).&amp;#160; The amendments in this ASU eliminate the probable initial recognition threshold to recognize a credit loss under current GAAP and, instead, reflect an entity&amp;#8217;s current estimate of all expected credit losses.  In addition, this ASU broadens the information an entity must consider in developing the credit loss estimate, including the use of reasonable and supportable forecasted information.&amp;#160; The amendments in this ASU require that credit losses on available-for-sale debt securities be presented as an allowance rather than as a write-down and an entity will be able to record reversals of credit losses in current period net income.  For public companies, the guidance in ASU 2016-13 is effective for annual periods beginning after December 15, 2019, and interim periods within those fiscal years.&amp;#160; This ASU should be applied through a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is effective.&amp;#160; Management does not expect ASU 2016-13 to have a material impact on the Company's financial statements and disclosures.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2017-08, "Receivables - Nonrefundable Fees and Other Costs - Premium Amortization on Purchased Callable Debt Securities"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2017-08 applies to all reporting entities that hold investments in callable debt securities that have an amortized cost basis in excess of the amount that is repayable by the issuer at the earliest call date (that is, at a premium). The amendments in this ASU shorten the amortization period for certain callable debt securities held at a premium. Specifically, the amendments require the premium to be amortized to the earliest call date.  The amendments do not require an accounting change for securities held at a discount; the discount continues to be amortized to maturity.   Under current GAAP, premiums and discounts on callable debt securities generally are amortized to the maturity date. If that callable debt security is subsequently called, the entity records a loss equal to the unamortized premium.  The amendments in this ASU more closely align the amortization period of premiums and discounts to expectations incorporated in market pricing on the underlying securities.  For public companies, the amendments in ASU 2017-08 are effective for annual periods beginning after December 15, 2019, and interim reporting periods within fiscal years beginning after December 15, 2020.  This ASU should be applied on a modified retrospective basis through a cumulative-effect adjustment directly to retained earnings as of the beginning of the period of adoption, and, in the period of adoption, the entity is required to provide disclosures about the change in accounting principle.  Early adoption is permitted, including adoption in an interim period.  Management does not expect ASU 2017-08 to have a material impact on the Company's financial statements and disclosures.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2017-12, "Derivatives and Hedging - Targeted Improvements to Accounting for Hedging Activities"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2017-12 applies to all reporting entities that elect to apply hedge accounting.  The hedge accounting requirements under current GAAP sometimes do not permit an entity to properly recognize the economic results of the hedging strategy in the financial statements, and they are difficult to understand and interpret.  The amendments in this ASU make certain targeted improvements to simplify the application of the hedge accounting guidance.  Also, they better align the risk management activities and financial reporting for hedging relationships through changes to both 1) the designation and measurement guidance for qualifying hedging relationships and 2) the presentation of hedge results.  For public companies, the amendments in ASU 2017-12 are effective for annual reporting periods beginning after December 15, 2018, and interim reporting periods within those fiscal years.  Early adoption is permitted including adoption in any interim period after issuance of the ASU.  All transition requirements and elections should be applied to hedging relationships existing on the date of adoption.  The entity should apply a cumulative-effect adjustment related to eliminating the separate measurement of ineffectiveness to accumulated other comprehensive income with a corresponding adjustment to the opening balance of retained earnings as of the beginning of the fiscal year that an entity adopts the amendments in this ASU.  The amended presentation and disclosure guidance is required only prospectively.  Management does not expect ASU 2017-12 to have a material impact on the Company's financial statements and disclosures.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2018-01, "Land Easement Practical Expedient for Transition to Topic 842"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2018-01 applies to entities with land easements that exist or expired before an entity&amp;#8217;s adoption of Topic 842, provided that the entity does not account for those land easements as leases under Topic 840.  The amendments in this ASU permit an entity to elect an optional transition practical expedient to not evaluate under Topic 842 land easements that exist or expired before the entity&amp;#8217;s adoption of Topic 842 and that were not previously accounted for as leases under Topic 840.  An entity that elects this practical expedient should apply the practical expedient consistently to all of its existing or expired land easements that were not previously accounted for as leases under Topic 840.  Once an entity adopts Topic 842, it should apply that Topic prospectively to all new (or modified) land easements to determine whether the arrangement should be accounted for as a lease.  An entity that does not elect this practical expedient should evaluate all existing or expired land easements in connection with the adoption of the new lease requirements in Topic 842 to assess whether they meet the definition of a lease.  The amendments in this ASU affect the amendments in ASU 2016-02, which are not yet effective but may be early adopted.  The effective date and transition requirements for the amendments are the same as the effective date and transition requirements in ASU 2016-02, which is for annual periods beginning after December 15, 2018, and interim periods within those fiscal years. Management does not expect ASU 2018-01 to have a material impact on the Company's financial statements and disclosures.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2018-02, "Income Statement - Reporting Comprehensive Income"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2018-02 applies to entities required to apply the provisions of Topic 220, Income Statement - Reporting Comprehensive Income, and has items of other comprehensive income for which the related tax effects are presented in other comprehensive income as required by GAAP.  The amendments in this ASU allow a reclassification from accumulated other comprehensive income to retained earnings for stranded tax effects resulting from the Tax Cuts and Jobs Act of 2017 (the "Tax Act").  Consequently, the amendments eliminate the stranded tax effects resulting from the Tax Act and will improve the usefulness of information reported to financial statement users.  However, because the amendments only relate to the reclassification of the income tax effects of the Tax Act, the underlying guidance that requires the effect of a change in tax laws or rates to be included in income from continuing operations is not affected.  The amendments in this ASU also require certain disclosures about stranded tax effects.  The amendments in this ASU are effective for all entities for fiscal years beginning after December 15, 2018, and interim periods within those fiscal years.  Early adoption of the amendments in this ASU is permitted, including adoption in any interim period.  The amendments in this ASU should be applied either in the period of adoption or retrospectively to each period (or periods) in which the effect of the change in the U.S. federal corporate income tax rate in the Tax Act is recognized.  Management does not expect ASU 2018-02 to have a material impact on the Company's financial statements and disclosures. &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2018-07, "Compensation - Stock Compensation - Improvements to Nonemployee Share-Based Payment Accounting"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2018-07 applies to all entities that enter into share-based payment transactions for acquiring goods and services from nonemployees.  The amendments in this ASU expand the scope of Topic 718, Compensation - Stock Compensation, to include share-based payments transactions to nonemployees.  Changes to the accounting for nonemployee awards as a result of this ASU include: 1) equity-classified nonemployee share-based payment awards are measured at the grant date, instead of the previous requirement to remeasure the awards through the performance completion date, 2) for awards with performance conditions, compensation cost is recognized when the achievement of the performance condition is probable, rather than upon achievement, and 3) the current requirement to reassess the classification (equity or liability) for nonemployee awards upon vesting is eliminated.  This ASU clarifies that Topic 718 does not apply to financing transactions or awards granted to customers as part of a contract accounted for under Topic 606, Revenue from Contracts with Customers.  The amendments in this ASU are effective for public business entities for fiscal years beginning after December 15, 2018, and interim periods within those fiscal years.  An entity should only remeasure liability-classified awards that have not been settled by the date of adoption and equity-classified awards for which the measurement date has not been established through a cumulative-effect adjustment to retained earnings as of the beginning of the fiscal year of adoption.  Management does not expect ASU 2018-07 to have a material impact on the Company's financial statements and disclosures.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounting Standards Update (ASU) 2018-15, "Intangibles - Goodwill and Other - Internal-Use Software"&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;ASU 2018-15 applies to entities that are a customer in a hosting arrangement that is a service contract.  The amendments  in this ASU align the requirements for capitalizing implementation costs incurred in a hosting arrangement that is a service contract with the requirements for capitalizing implementation costs incurred to develop or obtain internal-use software.  Accordingly, the amendments in this ASU require an entity in a hosting arrangement that is a service contract to follow the guidance in Subtopic 350-40 to determine which implementation costs to capitalize as an asset related to the service contract and which costs to expense. Further, it requires the entity to expense the capitalized implementation costs over the term of the hosting arrangement.  In addition, it requires the presentation of the expenses related to the capitalized implementation costs in the same line item in the statement of income as the fees associated with the hosting element of the arrangement and the classification of the payments for the capitalized implementation costs in the statement of cash flows in the same manner as the payments made for the fees associated with the hosting element.  The amendments in this ASU are effective for public entities for fiscal years beginning after December 15, 2019, and interim periods within those fiscal years, with early adoption permitted.  Management does not expect ASU 2018-15 to have a material impact on the Company's financial statement and disclosures.&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
	<us-gaap:NonvestedRestrictedStockSharesActivityTableTextBlock contextRef="FD2018Q3YTD" id="Fact-35DA971594FE5EC5AED3795E61518A8F">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the Company's restricted stock activity for the nine-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;: &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="11" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:48%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:15%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:16%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Shares                   (in thousands)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Weighted-Average     Grant Fair Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Aggregate Intrinsic Value                  (in thousands)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Nonvested as of December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;20&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;17.03&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Granted&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Vested&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(20&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;17.03&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;993&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Forfeited or expired&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Nonvested as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:NonvestedRestrictedStockSharesActivityTableTextBlock>
	<us-gaap:OffsettingAssetsTableTextBlock contextRef="FD2018Q3YTD" id="Fact-7A5FC89E3BD75CC9981A85F85966BD94">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table presents the gross activity for all derivative assets and liabilities which were presented on a net basis on the Consolidated Balance Sheets due to the right of offset with each counterparty (in thousands):&lt;/font&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="19" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:18%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:19%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Asset Derivatives&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Liability Derivatives&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;December&amp;#160;31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;December&amp;#160;31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gross amounts of recognized assets&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;16&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gross amounts of recognized liabilities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;91&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gross amounts offset&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gross amounts offset&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Net amount of assets presented&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;16&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Net amount of liabilities presented&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;91&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:OffsettingAssetsTableTextBlock>
	<us-gaap:ProductWarrantyDisclosureTextBlock contextRef="FD2018Q3YTD" id="Fact-EE79B5BB39FF55F0B61C88587596BF3E">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Warranty Obligations&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company records the estimated cost of fulfilling product warranties at the time of sale based upon historical costs to fulfill claims.  Obligations may also be recorded subsequent to the time of sale whenever specific events or circumstances impacting product quality become known that would not have been taken into account using historical data.  While we engage in extensive product quality programs and processes, including actively monitoring and evaluating the quality of our component suppliers and third-party contract manufacturers, the Company&amp;#8217;s warranty obligation is affected by product failure rates, material usage, and service delivery costs incurred in correcting a product failure.  An adverse change in any of these factors may result in the need for additional warranty provisions. Warranty obligations are included in &amp;#8220;Accrued expenses&amp;#8221; on the Consolidated Balance Sheets.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The changes in the warranty obligation were as follows (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="4" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:82%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:16%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4,701&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Provisions for warranties issued during the period&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3,376&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Fulfillment of warranty obligations&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(3,223&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Foreign exchange rate changes&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(117&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;4,737&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ProductWarrantyDisclosureTextBlock>
	<us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="FD2018Q3YTD" id="Fact-7936A48A997B33A22974AD11C521E013">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Revenue Recognition&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;On January 1, 2018, the Company adopted Accounting Standards Codification (ASC) 606, "Revenue from Contracts with Customers," using the full retrospective method to present all periods reported on a consistent basis.  Accordingly, prior-period results have been restated to apply the provisions of this ASC.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As a result of this adoption, revenue for software-only products sold as part of multiple-deliverable arrangements are no longer deferred when vendor-specific objective evidence of fair value does not exist for the undelivered elements of the arrangement. This change results in earlier recognition of revenue.  In addition, certain of the Company&amp;#8217;s product accessory sales, which were reported on a net basis, are now reported on a gross basis as a result of applying the expanded guidance in the new standard related to principal versus agent considerations.  This change results in the Company reporting higher revenue and higher cost of revenue when these sales are reported on a gross basis, although the gross margin dollars do not change.  Furthermore, for arrangements that include customer-specified acceptance criteria, revenue is recognized when the Company can objectively determine that control has been transferred to the customer in accordance with the agreed-upon specifications in the contract, which may occur before formal customer acceptance.  This change primarily impacts revenue recognition for arrangements in the logistics industry where certain customer solutions include installed products and results in earlier recognition of revenue.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The adoption of the standard impacted our previously-reported results as follows (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="24" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:30%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:10%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:10%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Statement of Operations&lt;/font&gt;&lt;/div&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As previously reported&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Adjustment&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As restated&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As previously reported&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Adjustment&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As restated&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Revenue&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;259,739&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,303&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;266,042&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;567,585&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;15,576&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;583,161&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Cost of revenue&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;62,360&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,701&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;68,061&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;128,056&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;14,701&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;142,757&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gross margin&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;197,379&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;602&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;197,981&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;439,529&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;875&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;440,404&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Operating income&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;110,247&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;602&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;110,849&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;207,211&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;875&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;208,086&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Income before income tax expense&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;112,150&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;602&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;112,752&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;212,918&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;875&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;213,793&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Income tax expense (benefit)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9,802&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;457&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;10,259&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,843&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;491&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9,334&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Net income&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;102,348&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;145&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;102,493&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;204,075&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;384&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;204,459&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="24" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Net income per weighted-average common and common-equivalent share:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Basic&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;0.59&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;0.59&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1.18&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1.18&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Diluted&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;0.57&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;0.57&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1.14&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1.14&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.609375%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:58%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Balance Sheet&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As previously reported&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Adjustment&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As restated&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Prepaid expenses and other current assets&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;30,800&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(117&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;30,683&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Accrued income taxes&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;11,391&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;112&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;11,503&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Deferred revenue and customer deposits&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9,969&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(549&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9,420&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Retained earnings&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;668,267&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;320&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;668,587&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands):&lt;/font&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="17" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:38%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Europe&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;115,592&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;146,230&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;242,161&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;252,386&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Americas&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;58,830&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;54,902&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;189,859&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;155,977&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Greater China&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;32,796&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;35,546&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;101,130&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;84,764&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Other Asia&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;25,003&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;29,364&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;79,902&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;90,034&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;232,221&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;266,042&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;613,052&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;583,161&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes disaggregated revenue information by revenue type (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="17" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:38%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Standard products and services&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;150,993&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;159,981&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;493,019&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;453,464&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Application-specific customer solutions&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;81,228&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;106,061&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;120,033&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;129,697&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;232,221&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;266,042&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;613,052&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;583,161&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Costs to Fulfill a Contract&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Costs to fulfill a contract are included in "Prepaid expenses and other current assets" on the Consolidated Balance Sheet and amounted to &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$6,811,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$3,230,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; as of September 30, 2018 and December 31, 2017, respectively.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Accounts Receivable, Contract Assets, and Contract Liabilities&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Accounts receivable represent amounts billed and currently due from customers which are reported at their net estimated realizable value.  The Company maintains reserves against its accounts receivable for potential credit losses.  Credit losses recognized on accounts receivable were immaterial for the three-month and nine-month periods ended  September 30, 2018 and October 1, 2017, respectively.  Contract assets consist of unbilled revenue which arises when revenue is recognized in advance of billing for certain application-specific customer solutions contracts.  Contract liabilities consist of deferred revenue and customer deposits which arise when amounts are billed to or collected from customers in advance of revenue recognition.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the deferred revenue and customer deposits activity for the nine-month period ended September 30, 2018 (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.609375%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="4" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:80%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:18%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Amount&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9,420&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Increases to deferred revenue and customer deposits&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;55,408&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Recognition of revenue&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(50,590&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Foreign exchange rate changes&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(986&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;13,252&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As a practical expedient, the Company has elected not to disclose the aggregate amount of the transaction price allocated to unsatisfied performance obligations, as our contracts have an original expected duration of less than one year.&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
	<us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock contextRef="FD2018Q3YTD" id="Fact-BCF462590ACBDCF7B088AD7726BF1808">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands):&lt;/font&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="17" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:38%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Europe&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;115,592&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;146,230&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;242,161&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;252,386&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Americas&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;58,830&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;54,902&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;189,859&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;155,977&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Greater China&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;32,796&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;35,546&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;101,130&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;84,764&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Other Asia&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;25,003&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;29,364&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;79,902&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;90,034&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;232,221&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;266,042&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;613,052&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;583,161&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock>
	<us-gaap:RevenueRecognitionPolicyTextBlock contextRef="FD2018Q3YTD" id="Fact-FF008C78B0C950DFBE9FCC8D24155139">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Revenue Recognition&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company recognizes revenue in accordance with Accounting Standards Codification (ASC) 606, &amp;#8220;Revenue from Contracts with Customers.&amp;#8221; The core principle of ASC 606 is to recognize revenue in a manner that depicts the transfer of promised goods or services to customers in an amount that reflects the consideration to which the Company expects to be entitled in exchange for those goods or services.  The framework in support of this core principle includes: (1) identifying the contract with the customer; (2) identifying the performance obligations in the contract; (3) determining the transaction price; (4) allocating the transaction price to the performance obligations; and (5) recognizing revenue when (or as) the performance obligations are satisfied.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Identifying the Contract with the Customer&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company identifies contracts with customers as agreements that create enforceable rights and obligations, which typically take the form of customer contracts or purchase orders.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Identifying the Performance Obligations in the Contract&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company identifies performance obligations as promises in contracts to transfer distinct goods or services. Standard products and services that the Company regularly sells separately are accounted for as distinct performance obligations.  Application-specific customer solutions that are comprised of a combination of products and services are accounted for as one performance obligation to deliver a total solution to the customer.  On-site support services that are provided to the customer after the solution is deployed are accounted for as a separate performance obligation.  These solutions are provided to customers in a variety of industries, including the consumer electronics, logistics, and automotive industries.   &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Shipping and handling activities for which the Company is responsible under the terms and conditions of the sale are not accounted for as performance obligations but as fulfillment costs.  These activities are required to fulfill the Company&amp;#8217;s promise to transfer the goods and are expensed when revenue is recognized.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company does not assess whether promised goods or services are performance obligations if they are immaterial in the context of the contract.  If revenue is recognized before immaterial promises have been completed, then the costs related to such immaterial promises are accrued at the time of sale.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Determining the Transaction Price&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company determines the transaction price as the amount of consideration it expects to receive in exchange for transferring promised goods or services to the customer.  Amounts collected from customers for sales taxes are excluded from the transaction price. &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;If a contract includes a variable amount, such as a rebate, then the Company estimates the transaction price using either the expected value or the most likely amount of consideration to be received, depending upon the specific facts and circumstances.  The Company includes estimated variable consideration in the transaction price only to the extent it is probable that a significant reversal of revenue will not occur when the uncertainty is resolved.  The Company updates its estimate of variable consideration at the end of each reporting period to reflect changes in facts and circumstances.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Allocating the Transaction Price to the Performance Obligations&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company allocates the transaction price to each performance obligation at contract inception based on a relative stand-alone selling price basis, or the price at which the Company would sell the good or service separately to similar customers in similar circumstances.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Recognizing Revenue When (or As) the Performance Obligations are Satisfied&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company recognizes revenue when it transfers the promised goods or services to the customer.  Revenue for standard products is recognized at the point in time when the customer obtains control of the goods, which is typically upon delivery when the customer has legal title, physical possession, the risks and rewards of ownership, and an enforceable obligation to pay for the products.  Revenue for services, which are not material, is typically recognized over the time the service is provided.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Revenue for application-specific customer solutions is recognized at the point in time when the solution is validated, which is the point in time when the Company can objectively determine that the agreed-upon specifications in the contract have been met and the customer will accept the performance obligations in the arrangement.  Although the customer may have taken legal title and physical possession of the goods when they arrived at the customer&amp;#8217;s designated site, the significant risks and rewards of ownership transfer to the customer only upon validation.  Revenue for on-site support services related to these solutions is recognized over the time the service is provided.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;In certain instances, an arrangement may include customer-specified acceptance provisions or performance guarantees that allow the customer to accept or reject delivered products that do not meet the customer&amp;#8217;s specifications.  If the Company can objectively determine that control of a good or service has been transferred to the customer in accordance with the agreed-upon specifications in the contract, then customer acceptance is a formality.  If acceptance provisions are presumed to be substantive, then revenue is deferred until customer acceptance.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;For the Company&amp;#8217;s standard products and services, revenue recognition and billing typically occur at the same time.  For application-specific customer solutions, however, the agreement with the customer may provide for billing terms which differ from revenue recognition criteria, resulting in either deferred revenue or unbilled revenue.  Credit assessments are performed to determine payment terms, which vary by region, industry, and customer.  Prepayment terms result in contract liabilities for customer deposits.  When credit is granted to customers, payment is typically due 30 to 90 days from billing.  The Company's contracts have an original expected duration of less than one year, and therefore as a practical expedient, the Company has elected to ignore the impact of the time value of money on a contract and to expense sales commissions.  The Company recognizes an asset for costs to fulfill a contract if the costs relate directly to the contract and to future performance, and the costs are expected to be recovered.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Management exercises judgment when determining the amount of revenue to be recognized each period.  Such judgments include, but are not limited to, assessing the customer&amp;#8217;s ability and intention to pay substantially all of the contract consideration when due, determining when two or more contracts should be combined and accounted for as a single contract, determining whether a contract modification has occurred, assessing whether promises are immaterial in the context of the contract, determining whether material promises in a contract represent distinct performance obligations, estimating the transaction price for a contract that contains variable consideration, determining the stand-alone selling price of each performance obligation, determining whether control is transferred over time or at a point in time for performance obligations, and assessing whether formal customer acceptance provisions are substantive.&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:RevenueRecognitionPolicyTextBlock>
	<us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock contextRef="FD2018Q3YTD" id="Fact-3140FFB983F959D592775CC6D9509760">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the Company&amp;#8217;s available-for-sale investments as of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="16" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:44%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Amortized&lt;br clear="none"/&gt;Cost&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Gross&lt;br clear="none"/&gt;Unrealized&lt;br clear="none"/&gt;Gains&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Gross&lt;br clear="none"/&gt;Unrealized&lt;br clear="none"/&gt;Losses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Fair&amp;#160;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Short-term:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;193,631&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(284&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;193,347&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;138,383&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;56&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(340&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;138,099&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;71,646&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(209&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;71,438&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,172&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(53&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,119&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,050&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(6&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,044&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Agency bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,969&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,969&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Long-term:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;175,881&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;469&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(343&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;176,007&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;60,276&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;33&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(198&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;60,111&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;32,718&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;7&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(14&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;32,711&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,286&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;32&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,318&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Agency bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,930&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;10&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,940&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;855&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(13&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;842&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;702,797&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;608&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(1,460&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;701,945&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock>
	<us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock contextRef="FD2018Q3YTD" id="Fact-CDE637C97FF05841A9910B9A45AF6A03">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Information regarding the effect of derivative instruments on the consolidated financial statements was as follows (in thousands):&lt;/font&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="18" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:22%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:21%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:10%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Location in Financial Statements&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Three-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="11" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Derivatives Designated as Hedging Instruments:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gains (losses) recorded in shareholders' equity (effective portion)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Accumulated other comprehensive income (loss), net of tax&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations (effective portion)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Revenue&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;56&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;10&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Research, development, and engineering expenses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Selling, general, and administrative expenses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Total gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;56&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gains (losses) recognized in current operations (ineffective portion and discontinued derivatives)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Foreign currency gain (loss)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="11" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Derivatives Not Designated as Hedging Instruments:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gains (losses) recognized in current operations&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Foreign currency gain (loss)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;299&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;43&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(366&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;139&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock>
	<us-gaap:ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock contextRef="FD2018Q3YTD" id="Fact-AB4EF7A08EB55E788F190B2983F7F8C6">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Information regarding the fair value of the outstanding forward contracts was as follows (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="20" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:17%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:10%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Asset Derivatives&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Liability Derivatives&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Balance&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Fair Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Balance&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Fair Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Sheet&lt;br clear="none"/&gt;Location&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Sheet&lt;br clear="none"/&gt;Location&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="10" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Derivatives Not Designated as Hedging Instruments:&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Economic hedge forward contracts&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Prepaid&amp;#160;expenses&amp;#160;and other current assets&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;16&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Accrued expenses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;91&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock>
	<us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock contextRef="FD2018Q3YTD" id="Fact-EC93FC6CEA8259ACA14211456139F7FA">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;A reconciliation of the United States federal statutory corporate tax rate to the Company&amp;#8217;s income tax expense, or effective tax rate, was as follows:&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:39%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months&amp;#160;Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Income tax provision at federal statutory corporate tax rate&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;35&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;35&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;State income taxes, net of federal benefit&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Foreign tax rate differential&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(7&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(18&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(7&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(18&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Tax credit&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Discrete tax benefit related to Tax Act 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(9&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(4&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Discrete tax benefit related to stock option exercises&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(4&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(7&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(5&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(13&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Other discrete tax events&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(2&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(2&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Other&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Income tax provision&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;6&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
	<us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock contextRef="FD2018Q3YTD" id="Fact-6D53BCDA537354B4A6730D959C653A06">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table presents the stock-based compensation expense by caption for each period presented on the Consolidated Statements of Operations (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="16" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:38%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Cost of revenue&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;544&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;520&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;1,898&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,404&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Research, development, and engineering&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;3,197&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,765&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;11,166&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,090&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Selling, general, and administrative&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5,402&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4,741&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;18,275&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13,861&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;9,143&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,026&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;31,339&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;23,355&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
	<us-gaap:ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock contextRef="FD2018Q3YTD" id="Fact-F0AA78BAD4DED66A0513AD77E25B36EC">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes disaggregated revenue information by revenue type (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="17" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:38%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Standard products and services&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;150,993&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;159,981&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;493,019&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;453,464&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Application-specific customer solutions&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;81,228&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;106,061&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;120,033&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;129,697&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;232,221&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;266,042&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;613,052&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;583,161&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock>
	<us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock contextRef="FD2018Q3YTD" id="Fact-407F28C013B653718DE7282F922BA127">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the financial assets and liabilities required to be measured at fair value on a recurring basis as of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:50%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Quoted&amp;#160;Prices&amp;#160;in&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Active Markets&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;for Identical&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Assets (Level 1)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Significant&amp;#160;    Other&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Observable&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Inputs (Level 2)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;&lt;br clear="none"/&gt;Unobservable&lt;br clear="none"/&gt;Inputs                                                                                                                                                                             (Level 3)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Assets:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Money market instruments&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,717&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;314,106&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;226,058&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;131,549&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;14,437&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Agency bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,909&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,886&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Economic hedge forward contracts&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;21&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Liabilities:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Economic hedge forward contracts&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;91&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Contingent consideration liabilities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,507&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock>
	<us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock contextRef="FD2018Q3YTD" id="Fact-A925D55D821B5DFEAEE7A8F2A17EF09F">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:6px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Amortized intangible assets consisted of the following (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:53%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Gross&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Carrying&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Accumulated&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Amortization&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Net&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Carrying&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Distribution networks&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;38,060&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;38,060&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Completed technologies&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;13,687&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;6,010&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;7,677&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Customer relationships&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;8,607&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5,587&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;3,020&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Non-compete agreements&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;370&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;185&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;185&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;60,724&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;49,842&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;10,882&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:inherit;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Gross&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Carrying&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Accumulated&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Amortization&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Net&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Carrying&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Distribution networks&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;38,060&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;38,060&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Completed technologies&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13,687&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4,181&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9,506&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Customer relationships&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,607&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,202&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3,405&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Non-compete agreements&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;370&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;92&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;278&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;60,724&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;47,535&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;13,189&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
	<us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="FD2018Q3YTD" id="Fact-7F10F3461DA8515FAB5EF2B7B22A1A6E">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Inventories consisted of the following (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="8" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:63%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:16%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:16%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;"&gt;December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Raw materials&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;46,660&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;33,927&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Work-in-process&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;4,071&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,114&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Finished goods&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;43,304&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;31,882&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;94,035&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;67,923&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
	<us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="FD2018Q3YTD" id="Fact-09EF1C63B746C63F1532AD75BC7EDBB8">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The adoption of the standard impacted our previously-reported results as follows (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="24" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:30%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:10%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:10%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:8%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Statement of Operations&lt;/font&gt;&lt;/div&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As previously reported&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Adjustment&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As restated&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As previously reported&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Adjustment&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As restated&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Revenue&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;259,739&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,303&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;266,042&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;567,585&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;15,576&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;583,161&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Cost of revenue&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;62,360&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5,701&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;68,061&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;128,056&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;14,701&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;142,757&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Gross margin&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;197,379&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;602&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;197,981&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;439,529&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;875&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;440,404&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Operating income&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;110,247&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;602&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;110,849&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;207,211&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;875&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;208,086&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Income before income tax expense&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;112,150&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;602&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;112,752&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;212,918&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;875&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;213,793&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Income tax expense (benefit)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9,802&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;457&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;10,259&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,843&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;491&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9,334&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Net income&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;102,348&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;145&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;102,493&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;204,075&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;384&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;204,459&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;height:12px;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="24" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Net income per weighted-average common and common-equivalent share:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Basic&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;0.59&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;0.59&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1.18&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1.18&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Diluted&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;0.57&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;0.57&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1.14&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#8212;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1.14&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.609375%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:58%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:12%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Balance Sheet&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As previously reported&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Adjustment&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As restated&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Prepaid expenses and other current assets&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;30,800&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(117&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;30,683&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Accrued income taxes&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;11,391&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;112&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;11,503&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Deferred revenue and customer deposits&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9,969&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(549&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;9,420&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Retained earnings&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;668,267&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;320&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;668,587&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
	<us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock contextRef="FD2018Q3YTD" id="Fact-B0921D8D5F075538BEA378E449785173">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The changes in the warranty obligation were as follows (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="4" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:82%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:16%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4,701&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Provisions for warranties issued during the period&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3,376&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Fulfillment of warranty obligations&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(3,223&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Foreign exchange rate changes&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(117&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Balance as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;4,737&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
	<us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="FD2018Q3YTD" id="Fact-BDB79D0F99E2517D8033CF7724C0EFCF">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the Company&amp;#8217;s stock option activity for the &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;nine&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;-month period ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;:&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="13" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:39%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:11%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:15%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Shares&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(in&amp;#160;thousands)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Weighted-&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Average&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Exercise&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Price&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Weighted-&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Average&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Remaining&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Contractual&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Term&amp;#160;(in&amp;#160;years)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Aggregate&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Intrinsic&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Value&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(in&amp;#160;thousands)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Outstanding as of December 31, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;12,726&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;25.24&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Granted&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,318&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;55.66&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Exercised&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(1,434&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;18.06&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Forfeited or expired&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(429&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;33.24&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Outstanding as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;13,181&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;31.11&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;7.48&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;329,301&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Exercisable as of September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;4,327&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;20.14&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;6.01&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;154,377&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Options vested or expected to vest as of September 30, 2018 (1)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;11,916&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;29.99&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:3px double #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;7.37&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;310,772&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;padding-left:48px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;(1) In addition to the vested options, the Company expects a portion of the unvested options to vest at some point in the future.  Options expected to vest are calculated by applying an estimated forfeiture rate to the unvested options.&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
	<us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock contextRef="FD2018Q3YTD" id="Fact-CF4418CF62BB5661A8D99840D66E5988">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The fair values of stock options granted in each period presented were estimated using the following weighted-average assumptions:&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:39%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months&amp;#160;Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Risk-free rate&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2.9&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2.4&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;2.9&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2.4&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Expected dividend yield&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;0.32&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;0.39&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;0.32&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;0.39&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Expected volatility&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;39&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;41&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;39&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;41&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;%&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Expected term (in years)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5.4&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5.1&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5.3&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;5.3&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
	<us-gaap:ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock contextRef="FD2018Q3YTD" id="Fact-12FF31A8B9025C6E963F5D03799A4762">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The following table summarizes the Company&amp;#8217;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="24" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:29%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:9%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="15" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Unrealized Loss Position For:&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:left;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Less than 12 Months&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;12 Months or Greater&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Total&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Fair&amp;#160;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Unrealized&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Losses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Fair&amp;#160;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Unrealized&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Losses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Fair&amp;#160;Value&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Unrealized&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;font style="font-family:Arial;font-size:9pt;font-weight:bold;"&gt;Losses&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Treasury bills&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;137,108&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(174&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;63,030&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(124&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;200,138&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(298&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Corporate bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;116,028&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(386&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;42,922&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(297&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;158,950&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(683&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Asset-backed securities&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;57,678&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(207&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;38,256&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(200&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;95,934&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(407&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Sovereign bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3,527&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(6&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;4,592&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(47&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;8,119&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(53&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Municipal bonds&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,854&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(6&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;842&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(13&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;3,696&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;(19&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;317,195&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(779&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;149,642&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(681&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;466,837&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;(1,460&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;)&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock>
	<us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock contextRef="FD2018Q3YTD" id="Fact-DDFE530467975998AA18EF30FBC907E7">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Weighted-average shares were calculated as follows (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:39%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:14%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:13%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Three-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Nine-months Ended&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;September 30, 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October 1, 2017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Basic weighted-average common shares outstanding&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;172,189&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;173,234&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;172,613&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;173,052&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Effect of dilutive stock options&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5,056&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,120&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;5,408&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;6,072&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Weighted-average common and common-equivalent shares outstanding&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;177,245&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;179,354&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;178,021&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;179,124&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock>
	<us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock contextRef="FD2018Q3YTD" id="Fact-0B8686E3933057A1858B727358D0746A">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As of September 30, 2018, estimated future amortization expense related to intangible assets is as follows (in thousands):&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5" rowspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:82%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:15%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;td style="width:1%;" rowspan="1" colspan="1"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;font-weight:bold;text-decoration:underline;"&gt;Year Ended December&amp;#160;31,&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;font style="font-family:Arial;font-size:8pt;font-weight:bold;"&gt;Amount&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Remainder of fiscal 2018&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;769&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2019&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,701&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2020&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,185&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2021&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2,017&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2022&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,691&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;2023&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;989&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Thereafter&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;530&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&amp;#160;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;$&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;10,882&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:inherit;font-size:10pt;"&gt;&lt;br clear="none"/&gt;&lt;/font&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
	<us-gaap:SignificantAccountingPoliciesTextBlock contextRef="FD2018Q3YTD" id="Fact-A53D9A72F541526FB890F45E5C001935">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Summary of Significant Accounting Policies&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;As permitted by the rules of the Securities and Exchange Commission applicable to Quarterly Reports on Form                      10-Q, these notes are condensed and do not contain all disclosures required by generally accepted accounting principles (GAAP).  As a result of the adoption of ASC 606 "Revenue from Contracts with Customers," Cognex Corporation (the "Company") has provided disclosures related to revenue recognition in this Quarterly Report on Form 10-Q.  Reference should be made to the consolidated financial statements and related notes included in the Company&amp;#8217;s Annual Report on Form 10-K for the year ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;December&amp;#160;31, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; for a full description of significant accounting policies.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;In the opinion of the management of the Company, the accompanying consolidated unaudited financial statements contain all adjustments, consisting of normal, recurring adjustments and financial statement reclassifications, necessary to present fairly the Company&amp;#8217;s financial position as of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, and the results of its operations for the three-month and nine-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; and &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;October&amp;#160;1, 2017&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;, and changes in shareholders&amp;#8217; equity, comprehensive income, and cash flows for the periods presented.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The results disclosed in the Consolidated Statements of Operations for the three-month and nine-month periods ended &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;September&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; are not necessarily indicative of the results to be expected for the full year.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;text-decoration:underline;"&gt;Revenue Recognition&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company recognizes revenue in accordance with Accounting Standards Codification (ASC) 606, &amp;#8220;Revenue from Contracts with Customers.&amp;#8221; The core principle of ASC 606 is to recognize revenue in a manner that depicts the transfer of promised goods or services to customers in an amount that reflects the consideration to which the Company expects to be entitled in exchange for those goods or services.  The framework in support of this core principle includes: (1) identifying the contract with the customer; (2) identifying the performance obligations in the contract; (3) determining the transaction price; (4) allocating the transaction price to the performance obligations; and (5) recognizing revenue when (or as) the performance obligations are satisfied.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Identifying the Contract with the Customer&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company identifies contracts with customers as agreements that create enforceable rights and obligations, which typically take the form of customer contracts or purchase orders.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:left;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Identifying the Performance Obligations in the Contract&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company identifies performance obligations as promises in contracts to transfer distinct goods or services. Standard products and services that the Company regularly sells separately are accounted for as distinct performance obligations.  Application-specific customer solutions that are comprised of a combination of products and services are accounted for as one performance obligation to deliver a total solution to the customer.  On-site support services that are provided to the customer after the solution is deployed are accounted for as a separate performance obligation.  These solutions are provided to customers in a variety of industries, including the consumer electronics, logistics, and automotive industries.   &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Shipping and handling activities for which the Company is responsible under the terms and conditions of the sale are not accounted for as performance obligations but as fulfillment costs.  These activities are required to fulfill the Company&amp;#8217;s promise to transfer the goods and are expensed when revenue is recognized.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company does not assess whether promised goods or services are performance obligations if they are immaterial in the context of the contract.  If revenue is recognized before immaterial promises have been completed, then the costs related to such immaterial promises are accrued at the time of sale.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Determining the Transaction Price&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company determines the transaction price as the amount of consideration it expects to receive in exchange for transferring promised goods or services to the customer.  Amounts collected from customers for sales taxes are excluded from the transaction price. &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;If a contract includes a variable amount, such as a rebate, then the Company estimates the transaction price using either the expected value or the most likely amount of consideration to be received, depending upon the specific facts and circumstances.  The Company includes estimated variable consideration in the transaction price only to the extent it is probable that a significant reversal of revenue will not occur when the uncertainty is resolved.  The Company updates its estimate of variable consideration at the end of each reporting period to reflect changes in facts and circumstances.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Allocating the Transaction Price to the Performance Obligations&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company allocates the transaction price to each performance obligation at contract inception based on a relative stand-alone selling price basis, or the price at which the Company would sell the good or service separately to similar customers in similar circumstances.&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-style:italic;"&gt;Recognizing Revenue When (or As) the Performance Obligations are Satisfied&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;The Company recognizes revenue when it transfers the promised goods or services to the customer.  Revenue for standard products is recognized at the point in time when the customer obtains control of the goods, which is typically upon delivery when the customer has legal title, physical possession, the risks and rewards of ownership, and an enforceable obligation to pay for the products.  Revenue for services, which are not material, is typically recognized over the time the service is provided.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Revenue for application-specific customer solutions is recognized at the point in time when the solution is validated, which is the point in time when the Company can objectively determine that the agreed-upon specifications in the contract have been met and the customer will accept the performance obligations in the arrangement.  Although the customer may have taken legal title and physical possession of the goods when they arrived at the customer&amp;#8217;s designated site, the significant risks and rewards of ownership transfer to the customer only upon validation.  Revenue for on-site support services related to these solutions is recognized over the time the service is provided.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;In certain instances, an arrangement may include customer-specified acceptance provisions or performance guarantees that allow the customer to accept or reject delivered products that do not meet the customer&amp;#8217;s specifications.  If the Company can objectively determine that control of a good or service has been transferred to the customer in accordance with the agreed-upon specifications in the contract, then customer acceptance is a formality.  If acceptance provisions are presumed to be substantive, then revenue is deferred until customer acceptance.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;For the Company&amp;#8217;s standard products and services, revenue recognition and billing typically occur at the same time.  For application-specific customer solutions, however, the agreement with the customer may provide for billing terms which differ from revenue recognition criteria, resulting in either deferred revenue or unbilled revenue.  Credit assessments are performed to determine payment terms, which vary by region, industry, and customer.  Prepayment terms result in contract liabilities for customer deposits.  When credit is granted to customers, payment is typically due 30 to 90 days from billing.  The Company's contracts have an original expected duration of less than one year, and therefore as a practical expedient, the Company has elected to ignore the impact of the time value of money on a contract and to expense sales commissions.  The Company recognizes an asset for costs to fulfill a contract if the costs relate directly to the contract and to future performance, and the costs are expected to be recovered.  &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;Management exercises judgment when determining the amount of revenue to be recognized each period.  Such judgments include, but are not limited to, assessing the customer&amp;#8217;s ability and intention to pay substantially all of the contract consideration when due, determining when two or more contracts should be combined and accounted for as a single contract, determining whether a contract modification has occurred, assessing whether promises are immaterial in the context of the contract, determining whether material promises in a contract represent distinct performance obligations, estimating the transaction price for a contract that contains variable consideration, determining the stand-alone selling price of each performance obligation, determining whether control is transferred over time or at a point in time for performance obligations, and assessing whether formal customer acceptance provisions are substantive.&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
	<us-gaap:StockholdersEquityNoteDisclosureTextBlock contextRef="FD2018Q3YTD" id="Fact-EC136A5249D555CA9FF1CC56489B9B22">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Stock Repurchase Program&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;In April 2017, the Company's Board of Directors authorized the repurchase of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$100,000,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; of the Company's common stock.  As of September 30, 2018, the Company had repurchased &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,744,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; shares at a cost of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$100,000,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; under this program, including &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;803,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; shares at a cost of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$45,200,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; in the three-month period ended April 1, 2018. Stock repurchases under this April 2017 program were completed in the three-month period ended April 1, 2018.  In February 2018, the Company's Board of Directors authorized the repurchase of an additional &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$150,000,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; of the Company's common stock.  As of September 30, 2018,  the Company had repurchased &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;1,947,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; shares at a cost of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$97,062,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; under this program, leaving a remaining authorized balance of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$52,938,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;.  Total stock repurchases in the nine-month period ended September 30, 2018 amounted to &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$142,262,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;. The Company may repurchase shares under this program in future periods depending upon a variety of factors, including, among other things, the impact of dilution from employee stock options, stock price, share availability, and cash requirements.&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
	<us-gaap:SubsequentEventsTextBlock contextRef="FD2018Q3YTD" id="Fact-DB05DD1DF46959809553141AF77A806E">&lt;div style="font-family:Times New Roman;font-size:10pt;"&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;font-weight:bold;"&gt;Subsequent Events&lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;On October 29, 2018, the Company&amp;#8217;s Board of Directors declared a cash dividend of &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$0.050&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; per share.  The dividend is payable &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;November&amp;#160;30, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; to all shareholders of record as of the close of business on &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;November&amp;#160;16, 2018&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;. &lt;/font&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;In addition, on October 29, 2018, the Company's Board of Directors authorized the repurchase of an additional &lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt;$200,000,000&lt;/font&gt;&lt;font style="font-family:Arial;font-size:10pt;"&gt; of the Company's common stock.  This new authorization will commence once the Company completes the February 2018 program.&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:SubsequentEventsTextBlock>
	<link:footnoteLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
	</link:footnoteLink>
</xbrli:xbrl>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>7
<FILENAME>cgnx-20180930.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!-- -->
<xsd:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.cognex.com/20180930" xmlns:cgnx="http://www.cognex.com/20180930" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:import namespace="http://fasb.org/us-gaap/2017-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd" />
  <xsd:import namespace="http://fasb.org/us-roles/2017-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2017/elts/us-roles-2017-01-31.xsd" />
  <xsd:import namespace="http://fasb.org/us-types/2017-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2017/elts/us-types-2017-01-31.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2009/arcrole/fact-explanatoryFact" schemaLocation="http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2009/role/net" schemaLocation="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd" />
  <xsd:import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd" />
  <xsd:import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd" />
  <xsd:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/country/2017-01-31" schemaLocation="http://xbrl.sec.gov/country/2017/country-2017-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/currency/2017-01-31" schemaLocation="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/dei/2014-01-31" schemaLocation="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/exch/2017-01-31" schemaLocation="http://xbrl.sec.gov/exch/2017/exch-2017-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/invest/2013-01-31" schemaLocation="http://xbrl.sec.gov/invest/2013/invest-2013-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/naics/2017-01-31" schemaLocation="http://xbrl.sec.gov/naics/2017/naics-2017-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/sic/2011-01-31" schemaLocation="http://xbrl.sec.gov/sic/2011/sic-2011-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/stpr/2011-01-31" schemaLocation="http://xbrl.sec.gov/stpr/2011/stpr-2011-01-31.xsd" />
  <xsd:annotation>
    <xsd:appinfo>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="cgnx-20180930_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple" />
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="cgnx-20180930_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple" />
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="cgnx-20180930_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple" />
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="cgnx-20180930_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple" />
      <link:roleType id="CashCashEquivalentsAndInvestments" roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestments">
        <link:definition>2105100 - Disclosure - Cash, Cash Equivalents, and Investments</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsAndInvestmentsComponentsOfCashCashEquivalentsAndInvestmentsDetail" roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsComponentsOfCashCashEquivalentsAndInvestmentsDetail">
        <link:definition>2405403 - Disclosure - Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsAndInvestmentsDetail" roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsDetail">
        <link:definition>2405402 - Disclosure - Cash, Cash Equivalents, and Investments (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsAndInvestmentsEffectiveMaturityDatesOfAvailableForSaleInvestmentsDetail" roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsEffectiveMaturityDatesOfAvailableForSaleInvestmentsDetail">
        <link:definition>2405406 - Disclosure - Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsAndInvestmentsGrossUnrealizedLossesAndFairValuesForAvailableForSaleInvestmentsDetail" roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsGrossUnrealizedLossesAndFairValuesForAvailableForSaleInvestmentsDetail">
        <link:definition>2405405 - Disclosure - Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsAndInvestmentsSummaryOfAvailableForSaleInvestmentsDetail" roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsSummaryOfAvailableForSaleInvestmentsDetail">
        <link:definition>2405404 - Disclosure - Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsAndInvestmentsTables" roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsTables">
        <link:definition>2305301 - Disclosure - Cash, Cash Equivalents, and Investments (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedBalanceSheets" roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheets">
        <link:definition>1003000 - Statement - Consolidated Balance Sheets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedBalanceSheetsParenthetical" roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical">
        <link:definition>1003501 - Statement - Consolidated Balance Sheets (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementOfShareholdersEquity" roleURI="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquity">
        <link:definition>1005000 - Statement - Consolidated Statement of Shareholders' Equity</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementOfShareholdersEquityParenthetical" roleURI="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquityParenthetical">
        <link:definition>1005501 - Statement - Consolidated Statement of Shareholders' Equity (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsOfCashFlows" roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfCashFlows">
        <link:definition>1004000 - Statement - Consolidated Statements of Cash Flows</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsOfComprehensiveIncome" roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncome">
        <link:definition>1002000 - Statement - Consolidated Statements of Comprehensive Income</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsOfComprehensiveIncomeParenthetical" roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncomeParenthetical">
        <link:definition>1002501 - Statement - Consolidated Statements of Comprehensive Income (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsOfOperations" roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfOperations">
        <link:definition>1001000 - Statement - Consolidated Statements of Operations</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstruments" roleURI="http://www.cognex.com/role/DerivativeInstruments">
        <link:definition>2111100 - Disclosure - Derivative Instruments</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsDerivativeInstrumentsGainLossDetail" roleURI="http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetail">
        <link:definition>2411406 - Disclosure - Derivative Instruments - Derivative Instruments, Gain (Loss) (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsDetail" roleURI="http://www.cognex.com/role/DerivativeInstrumentsDetail">
        <link:definition>2411402 - Disclosure - Derivative Instruments (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsOffsettingAssetsDetail" roleURI="http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetail">
        <link:definition>2411405 - Disclosure - Derivative Instruments - Offsetting Assets (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsOutstandingForwardContractsTableDetail" roleURI="http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetail">
        <link:definition>2411403 - Disclosure - Derivative Instruments - Outstanding Forward Contracts Table (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueDetail" roleURI="http://www.cognex.com/role/DerivativeInstrumentsScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueDetail">
        <link:definition>2411404 - Disclosure - Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsTables" roleURI="http://www.cognex.com/role/DerivativeInstrumentsTables">
        <link:definition>2311301 - Disclosure - Derivative Instruments (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DocumentAndEntityInformation" roleURI="http://www.cognex.com/role/DocumentAndEntityInformation">
        <link:definition>0001000 - 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>
      <link:roleType id="FairValueMeasurements" roleURI="http://www.cognex.com/role/FairValueMeasurements">
        <link:definition>2104100 - Disclosure - Fair Value Measurements</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetail" roleURI="http://www.cognex.com/role/FairValueMeasurementsAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetail">
        <link:definition>2404402 - Disclosure - Fair Value Measurements - Assets and Liabilities Measured at Fair Value on a Recurring Basis (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationDetails" roleURI="http://www.cognex.com/role/FairValueMeasurementsLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationDetails">
        <link:definition>2404403 - Disclosure - Fair Value Measurements - Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsTables" roleURI="http://www.cognex.com/role/FairValueMeasurementsTables">
        <link:definition>2304301 - Disclosure - Fair Value Measurements (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IntangibleAssets" roleURI="http://www.cognex.com/role/IntangibleAssets">
        <link:definition>2109100 - Disclosure - Intangible Assets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IntangibleAssetsDetails" roleURI="http://www.cognex.com/role/IntangibleAssetsDetails">
        <link:definition>2409402 - Disclosure - Intangible Assets (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IntangibleAssetsDetailsCalc2" roleURI="http://www.cognex.com/role/IntangibleAssetsDetailsCalc2">
        <link:definition>2409402 - Disclosure - Intangible Assets (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IntangibleAssetsTables" roleURI="http://www.cognex.com/role/IntangibleAssetsTables">
        <link:definition>2309301 - Disclosure - Intangible Assets (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Inventories" roleURI="http://www.cognex.com/role/Inventories">
        <link:definition>2106100 - Disclosure - Inventories</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InventoriesScheduleOfInventoriesDetail" roleURI="http://www.cognex.com/role/InventoriesScheduleOfInventoriesDetail">
        <link:definition>2406402 - Disclosure - Inventories - Schedule of Inventories (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InventoriesTables" roleURI="http://www.cognex.com/role/InventoriesTables">
        <link:definition>2306301 - Disclosure - Inventories (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="NewPronouncements" roleURI="http://www.cognex.com/role/NewPronouncements">
        <link:definition>2103100 - Disclosure - New Pronouncements</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognition" roleURI="http://www.cognex.com/role/RevenueRecognition">
        <link:definition>2112100 - Disclosure - Revenue Recognition</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionAdditionalInformationDetails" roleURI="http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails">
        <link:definition>2412406 - Disclosure - Revenue Recognition - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionDeferredRevenueActivityDetails" roleURI="http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails">
        <link:definition>2412407 - Disclosure - Revenue Recognition - Deferred Revenue Activity (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionImpactOnBalanceSheetDetails" roleURI="http://www.cognex.com/role/RevenueRecognitionImpactOnBalanceSheetDetails">
        <link:definition>2412403 - Disclosure - Revenue Recognition - Impact on Balance Sheet (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionImpactOnStatementOfOperationsDetails" roleURI="http://www.cognex.com/role/RevenueRecognitionImpactOnStatementOfOperationsDetails">
        <link:definition>2412402 - Disclosure - Revenue Recognition - Impact on Statement of Operations (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionRevenueDisaggregatedByGeographyDetails" roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByGeographyDetails">
        <link:definition>2412404 - Disclosure - Revenue Recognition - Revenue Disaggregated by Geography (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionRevenueDisaggregatedByProductsAndServicesDetails" roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByProductsAndServicesDetails">
        <link:definition>2412405 - Disclosure - Revenue Recognition - Revenue Disaggregated by Products and Services (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionTables" roleURI="http://www.cognex.com/role/RevenueRecognitionTables">
        <link:definition>2312301 - Disclosure - Revenue Recognition (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpense" roleURI="http://www.cognex.com/role/StockBasedCompensationExpense">
        <link:definition>2113100 - Disclosure - Stock-Based Compensation Expense</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseDetail" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseDetail">
        <link:definition>2413402 - Disclosure - Stock-Based Compensation Expense (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseNonvestedRestrictedStockSharesActivityDetails" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseNonvestedRestrictedStockSharesActivityDetails">
        <link:definition>2413405 - Disclosure - Stock-Based Compensation Expense - Nonvested Restricted Stock Shares Activity (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsDetail" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsDetail">
        <link:definition>2413406 - Disclosure - Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseSummaryOfStockOptionActivityDetail" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseSummaryOfStockOptionActivityDetail">
        <link:definition>2413403 - Disclosure - Stock-Based Compensation Expense - Summary of Stock Option Activity (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseTables" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseTables">
        <link:definition>2313301 - Disclosure - Stock-Based Compensation Expense (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseWeightedAverageAssumptionsUsedInEstimatingFairValuesOfStockOptionsGrantedDetail" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedInEstimatingFairValuesOfStockOptionsGrantedDetail">
        <link:definition>2413404 - Disclosure - Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockRepurchaseProgram" roleURI="http://www.cognex.com/role/StockRepurchaseProgram">
        <link:definition>2115100 - Disclosure - Stock Repurchase Program</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockRepurchaseProgramDetail" roleURI="http://www.cognex.com/role/StockRepurchaseProgramDetail">
        <link:definition>2415401 - Disclosure - Stock Repurchase Program (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SubsequentEvents" roleURI="http://www.cognex.com/role/SubsequentEvents">
        <link:definition>2120100 - Disclosure - Subsequent Events</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SubsequentEventsDetails" roleURI="http://www.cognex.com/role/SubsequentEventsDetails">
        <link:definition>2420401 - Disclosure - Subsequent Events (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryOfSignificantAccountingPolicies" roleURI="http://www.cognex.com/role/SummaryOfSignificantAccountingPolicies">
        <link:definition>2101100 - Disclosure - Summary of Significant Accounting Policies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryOfSignificantAccountingPoliciesPolicies" roleURI="http://www.cognex.com/role/SummaryOfSignificantAccountingPoliciesPolicies">
        <link:definition>2201201 - Disclosure - Summary of Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Taxes" roleURI="http://www.cognex.com/role/Taxes">
        <link:definition>2116100 - Disclosure - Taxes</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="TaxesDetail" roleURI="http://www.cognex.com/role/TaxesDetail">
        <link:definition>2416403 - Disclosure - Taxes (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="TaxesReconciliationOfUnitedStatesFederalStatutoryCorporateTaxRateToCompanysEffectiveTaxRateOrIncomeTaxProvisionDetail" roleURI="http://www.cognex.com/role/TaxesReconciliationOfUnitedStatesFederalStatutoryCorporateTaxRateToCompanysEffectiveTaxRateOrIncomeTaxProvisionDetail">
        <link:definition>2416402 - Disclosure - Taxes - Reconciliation of United States Federal Statutory Corporate Tax Rate to Company's Effective Tax Rate, or Income Tax Provision (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="TaxesTables" roleURI="http://www.cognex.com/role/TaxesTables">
        <link:definition>2316301 - Disclosure - Taxes (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WarrantyObligations" roleURI="http://www.cognex.com/role/WarrantyObligations">
        <link:definition>2110100 - Disclosure - Warranty Obligations</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WarrantyObligationsChangesInWarrantyObligationsDetail" roleURI="http://www.cognex.com/role/WarrantyObligationsChangesInWarrantyObligationsDetail">
        <link:definition>2410402 - Disclosure - Warranty Obligations - Changes in Warranty Obligations (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WarrantyObligationsTables" roleURI="http://www.cognex.com/role/WarrantyObligationsTables">
        <link:definition>2310301 - Disclosure - Warranty Obligations (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WeightedAverageShares" roleURI="http://www.cognex.com/role/WeightedAverageShares">
        <link:definition>2119100 - Disclosure - Weighted-Average Shares</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WeightedAverageSharesCalculationOfWeightedAverageSharesDetail" roleURI="http://www.cognex.com/role/WeightedAverageSharesCalculationOfWeightedAverageSharesDetail">
        <link:definition>2419403 - Disclosure - Weighted-Average Shares - Calculation of Weighted-Average Shares (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WeightedAverageSharesDetail" roleURI="http://www.cognex.com/role/WeightedAverageSharesDetail">
        <link:definition>2419402 - Disclosure - Weighted-Average Shares (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WeightedAverageSharesTables" roleURI="http://www.cognex.com/role/WeightedAverageSharesTables">
        <link:definition>2319301 - Disclosure - Weighted-Average Shares (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:element abstract="true" id="cgnx_AccruedExpensesMember" name="AccruedExpensesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_AgencyBondsMember" name="AgencyBondsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_ApplicationSpecificCustomerSolutionsMember" name="ApplicationSpecificCustomerSolutionsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_AsiaExcludingChinaMember" name="AsiaExcludingChinaMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue" name="AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element id="cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" name="AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element id="cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" name="AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element id="cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" name="AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element id="cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" name="AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element id="cgnx_CashCashEquivalentsShortTermAndLongTermInvestments" name="CashCashEquivalentsShortTermAndLongTermInvestments" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element abstract="true" id="cgnx_CashflowshedgesAbstract" name="CashflowshedgesAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_ChiaroTechnologiesLLCMember" name="ChiaroTechnologiesLLCMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" name="ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_CurrencytranslationadjustmentsAbstract" name="CurrencytranslationadjustmentsAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_CustomerContractsAndRelationshipsMember" name="CustomerContractsAndRelationshipsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment" name="DeferredRevenueForeignCurrencyExchangeAdjustment" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_DocumentAndEntityInformationAbstract" name="DocumentAndEntityInformationAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent" name="EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017" name="EffectiveIncomeTaxRateReconciliationTaxAct2017" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" name="EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element id="cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" name="EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" name="EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="instant" />
  <xsd:element id="cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" name="EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="instant" />
  <xsd:element id="cgnx_ExpirationPeriodOfStockOptionPlan" name="ExpirationPeriodOfStockOptionPlan" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_GViVenturesInc.Member" name="GViVenturesInc.Member" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_GeneralStockOptionPlanMember" name="GeneralStockOptionPlanMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities" name="IncomeTaxExaminationYearsUnderExaminationOtherEntities" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_IncreaseDecreaseInterestAndPenalties" name="IncreaseDecreaseInterestAndPenalties" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element id="cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" name="IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element id="cgnx_LiabilityForUncertainTaxPositions" name="LiabilityForUncertainTaxPositions" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant" />
  <xsd:element abstract="true" id="cgnx_LongTermInvestmentsMember" name="LongTermInvestmentsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_ManateeWorksInc.Member" name="ManateeWorksInc.Member" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves" name="MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration" />
  <xsd:element id="cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves" name="MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration" />
  <xsd:element id="cgnx_NumberOfGroupsWithinEmployeePopulation" name="NumberOfGroupsWithinEmployeePopulation" nillable="true" substitutionGroup="xbrli:item" type="xbrli:integerItemType" xbrli:periodType="instant" />
  <xsd:element id="cgnx_OutstandingForwardContractsTableTextBlock" name="OutstandingForwardContractsTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_Paymentofcontingentconsideration" name="Paymentofcontingentconsideration" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration" />
  <xsd:element id="cgnx_PaymentsForDivestitureofBusinesses" name="PaymentsForDivestitureofBusinesses" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_RepurchaseProgramApril2017Member" name="RepurchaseProgramApril2017Member" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_RepurchaseProgramApril2017andFebruary2018Member" name="RepurchaseProgramApril2017andFebruary2018Member" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_RepurchaseProgramFebruary2018Member" name="RepurchaseProgramFebruary2018Member" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_SellingGeneralAndAdministrativeMember" name="SellingGeneralAndAdministrativeMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element id="cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element id="cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" name="SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="cgnx_StandardProductsandServicesMember" name="StandardProductsandServicesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased" name="StockRepurchaseProgramAggregateNumberofSharesRepurchased" nillable="true" substitutionGroup="xbrli:item" type="xbrli:sharesItemType" xbrli:periodType="instant" />
  <xsd:element id="cgnx_StockRepurchaseProgramValue" name="StockRepurchaseProgramValue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element id="cgnx_TaxyearsopentoexaminationbyInternalRevenueService" name="TaxyearsopentoexaminationbyInternalRevenueService" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets" name="Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant" />
  <xsd:element id="cgnx_Vestingperiodperformancebasedrestrictedstockyears" name="Vestingperiodperformancebasedrestrictedstockyears" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration" />
  <xsd:element id="cgnx_Vestingperiodtimebasedrestrictedstockyears" name="Vestingperiodtimebasedrestrictedstockyears" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration" />
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>8
<FILENAME>cgnx-20180930_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!-- -->
<link:linkbase 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:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestments" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestments" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsComponentsOfCashCashEquivalentsAndInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsComponentsOfCashCashEquivalentsAndInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsEffectiveMaturityDatesOfAvailableForSaleInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsEffectiveMaturityDatesOfAvailableForSaleInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsGrossUnrealizedLossesAndFairValuesForAvailableForSaleInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsGrossUnrealizedLossesAndFairValuesForAvailableForSaleInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsSummaryOfAvailableForSaleInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsSummaryOfAvailableForSaleInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsTables" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheets" xlink:href="cgnx-20180930.xsd#ConsolidatedBalanceSheets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:href="cgnx-20180930.xsd#ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquity" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementOfShareholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquityParenthetical" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementOfShareholdersEquityParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfCashFlows" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementsOfCashFlows" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncome" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementsOfComprehensiveIncome" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncomeParenthetical" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementsOfComprehensiveIncomeParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfOperations" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementsOfOperations" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstruments" xlink:href="cgnx-20180930.xsd#DerivativeInstruments" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsDerivativeInstrumentsGainLossDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsOffsettingAssetsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsOutstandingForwardContractsTableDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsTables" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DocumentAndEntityInformation" xlink:href="cgnx-20180930.xsd#DocumentAndEntityInformation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurements" xlink:href="cgnx-20180930.xsd#FairValueMeasurements" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurementsAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetail" xlink:href="cgnx-20180930.xsd#FairValueMeasurementsAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurementsLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationDetails" xlink:href="cgnx-20180930.xsd#FairValueMeasurementsLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurementsTables" xlink:href="cgnx-20180930.xsd#FairValueMeasurementsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssets" xlink:href="cgnx-20180930.xsd#IntangibleAssets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssetsDetails" xlink:href="cgnx-20180930.xsd#IntangibleAssetsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssetsDetailsCalc2" xlink:href="cgnx-20180930.xsd#IntangibleAssetsDetailsCalc2" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssetsTables" xlink:href="cgnx-20180930.xsd#IntangibleAssetsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/Inventories" xlink:href="cgnx-20180930.xsd#Inventories" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/InventoriesScheduleOfInventoriesDetail" xlink:href="cgnx-20180930.xsd#InventoriesScheduleOfInventoriesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/InventoriesTables" xlink:href="cgnx-20180930.xsd#InventoriesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/NewPronouncements" xlink:href="cgnx-20180930.xsd#NewPronouncements" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognition" xlink:href="cgnx-20180930.xsd#RevenueRecognition" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionAdditionalInformationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionDeferredRevenueActivityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionImpactOnBalanceSheetDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionImpactOnBalanceSheetDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionImpactOnStatementOfOperationsDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionImpactOnStatementOfOperationsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByGeographyDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionRevenueDisaggregatedByGeographyDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByProductsAndServicesDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionRevenueDisaggregatedByProductsAndServicesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionTables" xlink:href="cgnx-20180930.xsd#RevenueRecognitionTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpense" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpense" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseDetail" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseNonvestedRestrictedStockSharesActivityDetails" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseNonvestedRestrictedStockSharesActivityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsDetail" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseSummaryOfStockOptionActivityDetail" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseSummaryOfStockOptionActivityDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseTables" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedInEstimatingFairValuesOfStockOptionsGrantedDetail" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseWeightedAverageAssumptionsUsedInEstimatingFairValuesOfStockOptionsGrantedDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockRepurchaseProgram" xlink:href="cgnx-20180930.xsd#StockRepurchaseProgram" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockRepurchaseProgramDetail" xlink:href="cgnx-20180930.xsd#StockRepurchaseProgramDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/SubsequentEvents" xlink:href="cgnx-20180930.xsd#SubsequentEvents" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/SubsequentEventsDetails" xlink:href="cgnx-20180930.xsd#SubsequentEventsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/SummaryOfSignificantAccountingPolicies" xlink:href="cgnx-20180930.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="cgnx-20180930.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/Taxes" xlink:href="cgnx-20180930.xsd#Taxes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/TaxesDetail" xlink:href="cgnx-20180930.xsd#TaxesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/TaxesReconciliationOfUnitedStatesFederalStatutoryCorporateTaxRateToCompanysEffectiveTaxRateOrIncomeTaxProvisionDetail" xlink:href="cgnx-20180930.xsd#TaxesReconciliationOfUnitedStatesFederalStatutoryCorporateTaxRateToCompanysEffectiveTaxRateOrIncomeTaxProvisionDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/TaxesTables" xlink:href="cgnx-20180930.xsd#TaxesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WarrantyObligations" xlink:href="cgnx-20180930.xsd#WarrantyObligations" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WarrantyObligationsChangesInWarrantyObligationsDetail" xlink:href="cgnx-20180930.xsd#WarrantyObligationsChangesInWarrantyObligationsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WarrantyObligationsTables" xlink:href="cgnx-20180930.xsd#WarrantyObligationsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageShares" xlink:href="cgnx-20180930.xsd#WeightedAverageShares" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesCalculationOfWeightedAverageSharesDetail" xlink:href="cgnx-20180930.xsd#WeightedAverageSharesCalculationOfWeightedAverageSharesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesDetail" xlink:href="cgnx-20180930.xsd#WeightedAverageSharesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesTables" xlink:href="cgnx-20180930.xsd#WeightedAverageSharesTables" xlink:type="simple" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestments" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsComponentsOfCashCashEquivalentsAndInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_CashCashEquivalentsShortTermAndLongTermInvestments" xlink:label="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_b0ea7d99-7eac-6d25-0c03-f96b5ae59d03" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_07da1db4-2708-4446-4250-1fdd5956185e" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_b0ea7d99-7eac-6d25-0c03-f96b5ae59d03" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_07da1db4-2708-4446-4250-1fdd5956185e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Cash" xlink:label="loc_us-gaap_Cash_94c137c7-bb31-5444-c8e6-a4a41bb54d97" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_07da1db4-2708-4446-4250-1fdd5956185e" xlink:to="loc_us-gaap_Cash_94c137c7-bb31-5444-c8e6-a4a41bb54d97" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MoneyMarketFundsAtCarryingValue" xlink:label="loc_us-gaap_MoneyMarketFundsAtCarryingValue_3aae306e-5a24-8a9a-c9e0-b6adf2c9a083" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_07da1db4-2708-4446-4250-1fdd5956185e" xlink:to="loc_us-gaap_MoneyMarketFundsAtCarryingValue_3aae306e-5a24-8a9a-c9e0-b6adf2c9a083" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_3dfc2054-7ef3-a116-42e5-83130d5f5732" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_b0ea7d99-7eac-6d25-0c03-f96b5ae59d03" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_3dfc2054-7ef3-a116-42e5-83130d5f5732" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LongTermInvestments" xlink:label="loc_us-gaap_LongTermInvestments_c62504ca-c588-7676-b66d-68002db39ddb" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_b0ea7d99-7eac-6d25-0c03-f96b5ae59d03" xlink:to="loc_us-gaap_LongTermInvestments_c62504ca-c588-7676-b66d-68002db39ddb" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsEffectiveMaturityDatesOfAvailableForSaleInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_2c867d9b-5594-18ef-c82a-679b606d1bd3" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_4836856d-11b6-313b-8616-6a2c8b77e26f" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_2c867d9b-5594-18ef-c82a-679b606d1bd3" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_4836856d-11b6-313b-8616-6a2c8b77e26f" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_6d8cff72-0b26-7918-b109-f96b5b678eb5" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_2c867d9b-5594-18ef-c82a-679b606d1bd3" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_6d8cff72-0b26-7918-b109-f96b5b678eb5" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_daa02421-fe8b-2920-db3f-f96b5b5e117c" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_2c867d9b-5594-18ef-c82a-679b606d1bd3" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_daa02421-fe8b-2920-db3f-f96b5b5e117c" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_8f6df217-aa1f-776a-7669-f96b5b5f0e30" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_2c867d9b-5594-18ef-c82a-679b606d1bd3" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_8f6df217-aa1f-776a-7669-f96b5b5f0e30" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_77bd18f8-893c-6c84-9bd0-f96b5b3b7a9c" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_2c867d9b-5594-18ef-c82a-679b606d1bd3" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_77bd18f8-893c-6c84-9bd0-f96b5b3b7a9c" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_4008914f-e0ea-7b87-57e9-f96b5b689524" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_2c867d9b-5594-18ef-c82a-679b606d1bd3" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_4008914f-e0ea-7b87-57e9-f96b5b689524" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsGrossUnrealizedLossesAndFairValuesForAvailableForSaleInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_00e7a94b-1ec9-6499-7f0a-2050ff159115" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_a1dd3f1b-4c24-2372-1a98-24b25891a665" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_00e7a94b-1ec9-6499-7f0a-2050ff159115" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_a1dd3f1b-4c24-2372-1a98-24b25891a665" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_7b1de9af-f23a-d7bf-8a2c-7efccf28ddba" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_00e7a94b-1ec9-6499-7f0a-2050ff159115" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_7b1de9af-f23a-d7bf-8a2c-7efccf28ddba" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_fa6902f3-9ec3-0632-57ef-52a27e57695e" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_aaf3e830-a5d9-ffa3-4995-c9e738f331db" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_fa6902f3-9ec3-0632-57ef-52a27e57695e" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_aaf3e830-a5d9-ffa3-4995-c9e738f331db" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_80d8afbb-83ba-fc94-42ba-ea8166197445" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_fa6902f3-9ec3-0632-57ef-52a27e57695e" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_80d8afbb-83ba-fc94-42ba-ea8166197445" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsSummaryOfAvailableForSaleInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_fc961581-2899-aa00-cc82-b67bd4267bb3" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecurities_d444402b-921b-e0fa-119c-908ab66850af" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_fc961581-2899-aa00-cc82-b67bd4267bb3" xlink:to="loc_us-gaap_AvailableForSaleSecurities_d444402b-921b-e0fa-119c-908ab66850af" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_fa6902f3-9ec3-0632-57ef-52a27e57695e" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_fc961581-2899-aa00-cc82-b67bd4267bb3" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_fa6902f3-9ec3-0632-57ef-52a27e57695e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_bb34ca49-0ca6-d513-414f-31e205fa11cc" xlink:type="locator" />
    <link:calculationArc order="3" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_fc961581-2899-aa00-cc82-b67bd4267bb3" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_bb34ca49-0ca6-d513-414f-31e205fa11cc" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_159dcb00-b17e-17db-7098-be4159799459" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities_d8bb821f-d155-9d4e-1738-736b4bf4cb19" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_159dcb00-b17e-17db-7098-be4159799459" xlink:to="loc_us-gaap_Liabilities_d8bb821f-d155-9d4e-1738-736b4bf4cb19" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent_f5e246cf-e80f-d00b-c8ed-4796aa2df4b4" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_d8bb821f-d155-9d4e-1738-736b4bf4cb19" xlink:to="loc_us-gaap_LiabilitiesCurrent_f5e246cf-e80f-d00b-c8ed-4796aa2df4b4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent_7a72b51a-735c-1ad4-bd3f-d9bcf2d6a26d" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_f5e246cf-e80f-d00b-c8ed-4796aa2df4b4" xlink:to="loc_us-gaap_AccountsPayableCurrent_7a72b51a-735c-1ad4-bd3f-d9bcf2d6a26d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_3fe8f96b-142b-97b1-3b39-b8d22cd10e98" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_f5e246cf-e80f-d00b-c8ed-4796aa2df4b4" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_3fe8f96b-142b-97b1-3b39-b8d22cd10e98" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_bd3a7ae4-0e62-b7df-2312-729d1644863d" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_f5e246cf-e80f-d00b-c8ed-4796aa2df4b4" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_bd3a7ae4-0e62-b7df-2312-729d1644863d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenueAndCreditsCurrent" xlink:label="loc_us-gaap_DeferredRevenueAndCreditsCurrent_6731e9e1-bfb2-76de-c1de-51076d3ff7a2" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_f5e246cf-e80f-d00b-c8ed-4796aa2df4b4" xlink:to="loc_us-gaap_DeferredRevenueAndCreditsCurrent_6731e9e1-bfb2-76de-c1de-51076d3ff7a2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_9a73c768-7e07-f56f-7aba-2b93110d3715" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_d8bb821f-d155-9d4e-1738-736b4bf4cb19" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_9a73c768-7e07-f56f-7aba-2b93110d3715" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:label="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_bda61526-afae-4edf-1e19-ab8c94a352d1" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_d8bb821f-d155-9d4e-1738-736b4bf4cb19" xlink:to="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_bda61526-afae-4edf-1e19-ab8c94a352d1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedIncomeTaxes" xlink:label="loc_us-gaap_AccruedIncomeTaxes_e24bf851-0f63-5d95-87c7-77732da67d36" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_d8bb821f-d155-9d4e-1738-736b4bf4cb19" xlink:to="loc_us-gaap_AccruedIncomeTaxes_e24bf851-0f63-5d95-87c7-77732da67d36" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_f234998c-5e05-09d0-d53e-5c44423c97c0" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_d8bb821f-d155-9d4e-1738-736b4bf4cb19" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_f234998c-5e05-09d0-d53e-5c44423c97c0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_4b158f76-5f04-5e4d-ead3-d80e1f9943db" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_159dcb00-b17e-17db-7098-be4159799459" xlink:to="loc_us-gaap_StockholdersEquity_4b158f76-5f04-5e4d-ead3-d80e1f9943db" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockValueOutstanding" xlink:label="loc_us-gaap_CommonStockValueOutstanding_84f35893-355e-0c6f-c67d-2f363beeac9a" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_4b158f76-5f04-5e4d-ead3-d80e1f9943db" xlink:to="loc_us-gaap_CommonStockValueOutstanding_84f35893-355e-0c6f-c67d-2f363beeac9a" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_41895068-9590-2880-73df-521995865843" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_4b158f76-5f04-5e4d-ead3-d80e1f9943db" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_41895068-9590-2880-73df-521995865843" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_065cb284-7fca-cc9b-5752-2feaf74d0011" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_4b158f76-5f04-5e4d-ead3-d80e1f9943db" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_065cb284-7fca-cc9b-5752-2feaf74d0011" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_04f0961a-a0bc-88cf-6658-3f950da4a458" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_4b158f76-5f04-5e4d-ead3-d80e1f9943db" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_04f0961a-a0bc-88cf-6658-3f950da4a458" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_c6057b1d-6685-8249-2051-6c57f3a16a9e" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent_8a47066b-3628-88d1-49db-ed09aecc7fc7" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_c6057b1d-6685-8249-2051-6c57f3a16a9e" xlink:to="loc_us-gaap_AssetsCurrent_8a47066b-3628-88d1-49db-ed09aecc7fc7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_07da1db4-2708-4446-4250-1fdd5956185e" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_8a47066b-3628-88d1-49db-ed09aecc7fc7" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_07da1db4-2708-4446-4250-1fdd5956185e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_3dfc2054-7ef3-a116-42e5-83130d5f5732" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_8a47066b-3628-88d1-49db-ed09aecc7fc7" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_3dfc2054-7ef3-a116-42e5-83130d5f5732" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_dd7775cd-f4ab-5607-9b31-1ee98f605818" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_8a47066b-3628-88d1-49db-ed09aecc7fc7" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_dd7775cd-f4ab-5607-9b31-1ee98f605818" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="loc_us-gaap_UnbilledReceivablesCurrent_0af4cf4f-dd4e-4a27-50f3-b3447f0d9b89" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_8a47066b-3628-88d1-49db-ed09aecc7fc7" xlink:to="loc_us-gaap_UnbilledReceivablesCurrent_0af4cf4f-dd4e-4a27-50f3-b3447f0d9b89" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_7eab44cf-1ea1-ca2a-420f-21f7b5343fc3" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_8a47066b-3628-88d1-49db-ed09aecc7fc7" xlink:to="loc_us-gaap_InventoryNet_7eab44cf-1ea1-ca2a-420f-21f7b5343fc3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_2294e6a2-7bab-43ed-d02c-bdf73b8fa561" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_8a47066b-3628-88d1-49db-ed09aecc7fc7" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_2294e6a2-7bab-43ed-d02c-bdf73b8fa561" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LongTermInvestments" xlink:label="loc_us-gaap_LongTermInvestments_c62504ca-c588-7676-b66d-68002db39ddb" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_c6057b1d-6685-8249-2051-6c57f3a16a9e" xlink:to="loc_us-gaap_LongTermInvestments_c62504ca-c588-7676-b66d-68002db39ddb" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_1944a381-5c4e-ce3c-9111-13ccd1c639db" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_c6057b1d-6685-8249-2051-6c57f3a16a9e" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_1944a381-5c4e-ce3c-9111-13ccd1c639db" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredTaxAssetsNetNoncurrent" xlink:label="loc_us-gaap_DeferredTaxAssetsNetNoncurrent_0176d7b6-3703-b24f-2db3-fb35a9f915aa" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_c6057b1d-6685-8249-2051-6c57f3a16a9e" xlink:to="loc_us-gaap_DeferredTaxAssetsNetNoncurrent_0176d7b6-3703-b24f-2db3-fb35a9f915aa" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_49187b45-82fd-7060-b114-79ff249a4331" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_c6057b1d-6685-8249-2051-6c57f3a16a9e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_49187b45-82fd-7060-b114-79ff249a4331" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_93a64cae-271a-5e6b-8c83-5adf9f941142" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_c6057b1d-6685-8249-2051-6c57f3a16a9e" xlink:to="loc_us-gaap_Goodwill_93a64cae-271a-5e6b-8c83-5adf9f941142" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_9b27fab9-d497-627b-4cfb-6b585220b978" xlink:type="locator" />
    <link:calculationArc order="7" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_c6057b1d-6685-8249-2051-6c57f3a16a9e" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_9b27fab9-d497-627b-4cfb-6b585220b978" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquity" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquityParenthetical" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_dd2e9db6-10f9-d78a-ba84-b18268245a83" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_dd2e9db6-10f9-d78a-ba84-b18268245a83" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_641b1cab-a2b3-2e0e-8389-1455ff3f8581" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_NetIncomeLoss_641b1cab-a2b3-2e0e-8389-1455ff3f8581" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockOptionPlanExpense" xlink:label="loc_us-gaap_StockOptionPlanExpense_104477f8-83c9-dc2e-3540-f2495eaf6b1c" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_StockOptionPlanExpense_104477f8-83c9-dc2e-3540-f2495eaf6b1c" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_b4463f01-8926-c348-9c78-89e2ab0ed145" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_Depreciation_b4463f01-8926-c348-9c78-89e2ab0ed145" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_ae796c5c-1c01-d654-6a3c-3b5dd2c89517" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_ae796c5c-1c01-d654-6a3c-3b5dd2c89517" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments" xlink:label="loc_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_ee12cc29-63c9-040c-19f2-17921f90c9bb" xlink:type="locator" />
    <link:calculationArc order="5" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_ee12cc29-63c9-040c-19f2-17921f90c9bb" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossOnSaleOfInvestments" xlink:label="loc_us-gaap_GainLossOnSaleOfInvestments_a2377e00-ed9e-3dc2-4fbd-c7e624463b5d" xlink:type="locator" />
    <link:calculationArc order="6" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_GainLossOnSaleOfInvestments_a2377e00-ed9e-3dc2-4fbd-c7e624463b5d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_23d33fb4-4c27-bc2e-1ec3-5bf906d2e523" xlink:type="locator" />
    <link:calculationArc order="7" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_23d33fb4-4c27-bc2e-1ec3-5bf906d2e523" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_37df9202-d5d1-1363-9956-7b4402bf22d6" xlink:type="locator" />
    <link:calculationArc order="8" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_37df9202-d5d1-1363-9956-7b4402bf22d6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_dd4bfa5e-1979-c817-e8a9-371104c0d4f7" xlink:type="locator" />
    <link:calculationArc order="9" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_dd4bfa5e-1979-c817-e8a9-371104c0d4f7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInUnbilledReceivables" xlink:label="loc_us-gaap_IncreaseDecreaseInUnbilledReceivables_6cd34f19-57d8-aa6f-5d3a-fb8e0fc91b31" xlink:type="locator" />
    <link:calculationArc order="10" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_IncreaseDecreaseInUnbilledReceivables_6cd34f19-57d8-aa6f-5d3a-fb8e0fc91b31" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_bf3f9720-ba63-7ecd-52ae-e754a6f349db" xlink:type="locator" />
    <link:calculationArc order="11" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_bf3f9720-ba63-7ecd-52ae-e754a6f349db" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_c998cbd2-a633-c2ec-1932-e3bfedecbc9f" xlink:type="locator" />
    <link:calculationArc order="12" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_c998cbd2-a633-c2ec-1932-e3bfedecbc9f" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_a8b6fe35-4809-bddf-7ef6-3144a6c89165" xlink:type="locator" />
    <link:calculationArc order="13" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_a8b6fe35-4809-bddf-7ef6-3144a6c89165" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_74be5b6b-5c06-c74c-89da-2d9660b81d9b" xlink:type="locator" />
    <link:calculationArc order="14" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_74be5b6b-5c06-c74c-89da-2d9660b81d9b" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_e1b56980-77f5-cd6e-5f3f-b4c4391067d0" xlink:type="locator" />
    <link:calculationArc order="15" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_e1b56980-77f5-cd6e-5f3f-b4c4391067d0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_91397648-589d-3b53-47c8-16b8909c78f4" xlink:type="locator" />
    <link:calculationArc order="16" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_91397648-589d-3b53-47c8-16b8909c78f4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_962cfc51-230d-a221-126b-1d12af7a5921" xlink:type="locator" />
    <link:calculationArc order="17" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_444b1ac7-f47a-4ce3-0caa-537f7e4ab8c3" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_962cfc51-230d-a221-126b-1d12af7a5921" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_70319186-e7bd-7189-88d2-eba26fb93350" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_dd2e9db6-10f9-d78a-ba84-b18268245a83" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_70319186-e7bd-7189-88d2-eba26fb93350" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="loc_us-gaap_PaymentsToAcquireInvestments_a3cce359-4901-8e47-7521-d2fa73471a4d" xlink:type="locator" />
    <link:calculationArc order="1" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_70319186-e7bd-7189-88d2-eba26fb93350" xlink:to="loc_us-gaap_PaymentsToAcquireInvestments_a3cce359-4901-8e47-7521-d2fa73471a4d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:label="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_121f9e9b-9a4d-e32c-aef0-97aedfda4465" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_70319186-e7bd-7189-88d2-eba26fb93350" xlink:to="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_121f9e9b-9a4d-e32c-aef0-97aedfda4465" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_fee12b15-6b42-6245-2e2f-ff030b98332c" xlink:type="locator" />
    <link:calculationArc order="3" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_70319186-e7bd-7189-88d2-eba26fb93350" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_fee12b15-6b42-6245-2e2f-ff030b98332c" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_9d35c912-5b2d-89f7-eeb3-812a0511db5e" xlink:type="locator" />
    <link:calculationArc order="4" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_70319186-e7bd-7189-88d2-eba26fb93350" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_9d35c912-5b2d-89f7-eeb3-812a0511db5e" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_PaymentsForDivestitureofBusinesses" xlink:label="loc_cgnx_PaymentsForDivestitureofBusinesses_f2e4873d-79d7-2f60-06e1-f96b5b17326a" xlink:type="locator" />
    <link:calculationArc order="5" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_70319186-e7bd-7189-88d2-eba26fb93350" xlink:to="loc_cgnx_PaymentsForDivestitureofBusinesses_f2e4873d-79d7-2f60-06e1-f96b5b17326a" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_deb49b68-c030-7624-a39d-ea301caa5dbf" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_dd2e9db6-10f9-d78a-ba84-b18268245a83" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_deb49b68-c030-7624-a39d-ea301caa5dbf" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_d59a921e-6301-0411-46e6-49b6a981f8a0" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_deb49b68-c030-7624-a39d-ea301caa5dbf" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_d59a921e-6301-0411-46e6-49b6a981f8a0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_8a1490c4-32d9-5132-1fe2-2675a45abdae" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_deb49b68-c030-7624-a39d-ea301caa5dbf" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_8a1490c4-32d9-5132-1fe2-2675a45abdae" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="loc_us-gaap_PaymentsOfDividendsCommonStock_6f80ca9e-82d0-f056-a403-c4914c1ce379" xlink:type="locator" />
    <link:calculationArc order="3" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_deb49b68-c030-7624-a39d-ea301caa5dbf" xlink:to="loc_us-gaap_PaymentsOfDividendsCommonStock_6f80ca9e-82d0-f056-a403-c4914c1ce379" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Paymentofcontingentconsideration" xlink:label="loc_cgnx_Paymentofcontingentconsideration_d15d0438-f42e-94ce-fc37-f96b5b0d32b4" xlink:type="locator" />
    <link:calculationArc order="4" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_deb49b68-c030-7624-a39d-ea301caa5dbf" xlink:to="loc_cgnx_Paymentofcontingentconsideration_d15d0438-f42e-94ce-fc37-f96b5b0d32b4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_8629a772-7004-5d77-9980-0f501e29c5c8" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_dd2e9db6-10f9-d78a-ba84-b18268245a83" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_8629a772-7004-5d77-9980-0f501e29c5c8" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_499015ce-2160-aed2-85a3-080e8c4c6cdf" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_641b1cab-a2b3-2e0e-8389-1455ff3f8581" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_499015ce-2160-aed2-85a3-080e8c4c6cdf" xlink:to="loc_us-gaap_NetIncomeLoss_641b1cab-a2b3-2e0e-8389-1455ff3f8581" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_72d12753-e25c-cdc0-88b6-98db8d7b7fae" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_499015ce-2160-aed2-85a3-080e8c4c6cdf" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_72d12753-e25c-cdc0-88b6-98db8d7b7fae" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_cc7c59d2-21ac-163e-0898-1c1f212ef02b" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_72d12753-e25c-cdc0-88b6-98db8d7b7fae" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_cc7c59d2-21ac-163e-0898-1c1f212ef02b" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_6feed690-17e1-a928-d1c5-204f2faa570e" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_cc7c59d2-21ac-163e-0898-1c1f212ef02b" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_6feed690-17e1-a928-d1c5-204f2faa570e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_aa99f772-8337-cbc2-0b89-25fbb3108271" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_cc7c59d2-21ac-163e-0898-1c1f212ef02b" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_aa99f772-8337-cbc2-0b89-25fbb3108271" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_e78780a0-37a6-d85b-a453-be28b7843e2c" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_72d12753-e25c-cdc0-88b6-98db8d7b7fae" xlink:to="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_e78780a0-37a6-d85b-a453-be28b7843e2c" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_57e8ae74-d8b6-c629-9bee-2d0929cd3999" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_e78780a0-37a6-d85b-a453-be28b7843e2c" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_57e8ae74-d8b6-c629-9bee-2d0929cd3999" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_ab3008c3-c5c2-a86b-0613-39cbd9b94527" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_e78780a0-37a6-d85b-a453-be28b7843e2c" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_ab3008c3-c5c2-a86b-0613-39cbd9b94527" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_351eeed0-a987-88e4-c007-095f3644ffff" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_72d12753-e25c-cdc0-88b6-98db8d7b7fae" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_351eeed0-a987-88e4-c007-095f3644ffff" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncomeParenthetical" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsOfOperations" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_641b1cab-a2b3-2e0e-8389-1455ff3f8581" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_0eb47183-f513-314d-ceda-ee2412d9eee8" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_641b1cab-a2b3-2e0e-8389-1455ff3f8581" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_0eb47183-f513-314d-ceda-ee2412d9eee8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_9894e895-7695-402a-9f03-08d60b7373b8" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_0eb47183-f513-314d-ceda-ee2412d9eee8" xlink:to="loc_us-gaap_OperatingIncomeLoss_9894e895-7695-402a-9f03-08d60b7373b8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_aaae347c-fa91-e2c3-dd05-1b008b13fd0c" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_9894e895-7695-402a-9f03-08d60b7373b8" xlink:to="loc_us-gaap_GrossProfit_aaae347c-fa91-e2c3-dd05-1b008b13fd0c" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNet" xlink:label="loc_us-gaap_SalesRevenueNet_ff017a48-8743-bfac-8af0-ca31401cb6de" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_aaae347c-fa91-e2c3-dd05-1b008b13fd0c" xlink:to="loc_us-gaap_SalesRevenueNet_ff017a48-8743-bfac-8af0-ca31401cb6de" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_53981114-ea4f-c85d-1ee7-90421fdccca2" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_aaae347c-fa91-e2c3-dd05-1b008b13fd0c" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_53981114-ea4f-c85d-1ee7-90421fdccca2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_25ae5ce2-b413-b975-9a84-c7503d2496cf" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_9894e895-7695-402a-9f03-08d60b7373b8" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_25ae5ce2-b413-b975-9a84-c7503d2496cf" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_29ad42f4-24c5-90ea-4492-fdb757d66249" xlink:type="locator" />
    <link:calculationArc order="3" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_9894e895-7695-402a-9f03-08d60b7373b8" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_29ad42f4-24c5-90ea-4492-fdb757d66249" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_303ce027-35e0-90c6-b665-c64d3c33d4e9" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_0eb47183-f513-314d-ceda-ee2412d9eee8" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_303ce027-35e0-90c6-b665-c64d3c33d4e9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentIncomeNonoperating" xlink:label="loc_us-gaap_InvestmentIncomeNonoperating_6d011e0e-8a4d-ead4-8ae2-208e1f9abb48" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_0eb47183-f513-314d-ceda-ee2412d9eee8" xlink:to="loc_us-gaap_InvestmentIncomeNonoperating_6d011e0e-8a4d-ead4-8ae2-208e1f9abb48" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_250c3b2f-7db5-7088-68cc-1dd831a2c2d7" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_0eb47183-f513-314d-ceda-ee2412d9eee8" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_250c3b2f-7db5-7088-68cc-1dd831a2c2d7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_78b7d85e-8366-fe6d-cb1f-faac5a041b79" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_641b1cab-a2b3-2e0e-8389-1455ff3f8581" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_78b7d85e-8366-fe6d-cb1f-faac5a041b79" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/DerivativeInstruments" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_0133A827C7035C98B97CF1CF20B9DD70" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeFairValueOfDerivativeLiability" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeLiability_E98FF608E79650ECAA62AB5488763227" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DerivativeLiabilities_0133A827C7035C98B97CF1CF20B9DD70" xlink:to="loc_us-gaap_DerivativeFairValueOfDerivativeLiability_E98FF608E79650ECAA62AB5488763227" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset" xlink:label="loc_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_DB6D072E326F5F679BCC2997B7CA37A0" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DerivativeLiabilities_0133A827C7035C98B97CF1CF20B9DD70" xlink:to="loc_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_DB6D072E326F5F679BCC2997B7CA37A0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_165C2322626B58149DA2F803CC99F3A5" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeFairValueOfDerivativeAsset" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeAsset_3EE3BA03DD995684A144F8062FF08CB1" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DerivativeAssets_165C2322626B58149DA2F803CC99F3A5" xlink:to="loc_us-gaap_DerivativeFairValueOfDerivativeAsset_3EE3BA03DD995684A144F8062FF08CB1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset" xlink:label="loc_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_FF1DD83232C35B5A8F197283F2E6998C" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DerivativeAssets_165C2322626B58149DA2F803CC99F3A5" xlink:to="loc_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_FF1DD83232C35B5A8F197283F2E6998C" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/DocumentAndEntityInformation" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/FairValueMeasurements" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/FairValueMeasurementsAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/FairValueMeasurementsLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/FairValueMeasurementsTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/IntangibleAssets" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/IntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_DBC485AD344B50FAB345CB1298A42451" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_BFD376794018587A855E1C44CA4B5222" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_DBC485AD344B50FAB345CB1298A42451" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_BFD376794018587A855E1C44CA4B5222" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_58C2F7D1BD3355F78B2D3475C833A122" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_DBC485AD344B50FAB345CB1298A42451" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_58C2F7D1BD3355F78B2D3475C833A122" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/IntangibleAssetsDetailsCalc2" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_66C32A18A9EF32942B31B8CAC674EF3C_DBC485AD344B50FAB345CB1298A42451" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_66C32A18A9EF32942B31B8CAC674EF3C_F87675FC24FD5A67807182C5B01212BC" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_66C32A18A9EF32942B31B8CAC674EF3C_DBC485AD344B50FAB345CB1298A42451" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_66C32A18A9EF32942B31B8CAC674EF3C_F87675FC24FD5A67807182C5B01212BC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_66C32A18A9EF32942B31B8CAC674EF3C_6B481173A8E551FFBFAAAAB1E6675F3F" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_66C32A18A9EF32942B31B8CAC674EF3C_DBC485AD344B50FAB345CB1298A42451" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_66C32A18A9EF32942B31B8CAC674EF3C_6B481173A8E551FFBFAAAAB1E6675F3F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_66C32A18A9EF32942B31B8CAC674EF3C_0BE78092E2BF5507B5E2D673F0778968" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_66C32A18A9EF32942B31B8CAC674EF3C_DBC485AD344B50FAB345CB1298A42451" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_66C32A18A9EF32942B31B8CAC674EF3C_0BE78092E2BF5507B5E2D673F0778968" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_66C32A18A9EF32942B31B8CAC674EF3C_12DD03D8EEE251AA8AA5255B363FA88D" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_66C32A18A9EF32942B31B8CAC674EF3C_DBC485AD344B50FAB345CB1298A42451" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_66C32A18A9EF32942B31B8CAC674EF3C_12DD03D8EEE251AA8AA5255B363FA88D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_66C32A18A9EF32942B31B8CAC674EF3C_10CCBB04C46D5E0EA117D1E79AB6B42B" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_66C32A18A9EF32942B31B8CAC674EF3C_DBC485AD344B50FAB345CB1298A42451" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_66C32A18A9EF32942B31B8CAC674EF3C_10CCBB04C46D5E0EA117D1E79AB6B42B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_66C32A18A9EF32942B31B8CAC674EF3C_ADBEEA4CCB2F511E9F01AE54A2B6BAE3" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_66C32A18A9EF32942B31B8CAC674EF3C_DBC485AD344B50FAB345CB1298A42451" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_66C32A18A9EF32942B31B8CAC674EF3C_ADBEEA4CCB2F511E9F01AE54A2B6BAE3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_66C32A18A9EF32942B31B8CAC674EF3C_AA44D5517F9A5F7B8823B267000A199F" xlink:type="locator" />
    <link:calculationArc order="7" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_66C32A18A9EF32942B31B8CAC674EF3C_DBC485AD344B50FAB345CB1298A42451" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_66C32A18A9EF32942B31B8CAC674EF3C_AA44D5517F9A5F7B8823B267000A199F" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/IntangibleAssetsTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/Inventories" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/InventoriesScheduleOfInventoriesDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_99437CE99B0E5E45896ABE6CF88DD3D5" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_60DB51139BEF5C1D965860BD42EFC797" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_99437CE99B0E5E45896ABE6CF88DD3D5" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_60DB51139BEF5C1D965860BD42EFC797" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_FD6F142738F5520081918944A5187502" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_99437CE99B0E5E45896ABE6CF88DD3D5" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves_FD6F142738F5520081918944A5187502" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_E39EBC584E225B8C8933EB9F8773AD18" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_99437CE99B0E5E45896ABE6CF88DD3D5" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_E39EBC584E225B8C8933EB9F8773AD18" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/InventoriesTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/NewPronouncements" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/RevenueRecognition" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionImpactOnBalanceSheetDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionImpactOnStatementOfOperationsDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByGeographyDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByProductsAndServicesDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpense" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseNonvestedRestrictedStockSharesActivityDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseSummaryOfStockOptionActivityDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedInEstimatingFairValuesOfStockOptionsGrantedDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/StockRepurchaseProgram" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/StockRepurchaseProgramDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/SubsequentEvents" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/SubsequentEventsDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/SummaryOfSignificantAccountingPolicies" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/Taxes" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/TaxesDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/TaxesReconciliationOfUnitedStatesFederalStatutoryCorporateTaxRateToCompanysEffectiveTaxRateOrIncomeTaxProvisionDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_8712fd02-171c-5995-3f18-84e885c380b9" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_29919d14-72a3-6197-982a-3a6269f21038" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_8712fd02-171c-5995-3f18-84e885c380b9" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_29919d14-72a3-6197-982a-3a6269f21038" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_c48cf597-7f94-3186-bb2a-448703ee500e" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_8712fd02-171c-5995-3f18-84e885c380b9" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_c48cf597-7f94-3186-bb2a-448703ee500e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_744a85ef-de6a-dc1b-540c-cd37e4ee0e8e" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_8712fd02-171c-5995-3f18-84e885c380b9" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_744a85ef-de6a-dc1b-540c-cd37e4ee0e8e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_bd3fb4a2-dba4-9f41-2b9f-30441850eb67" xlink:type="locator" />
    <link:calculationArc order="4" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_8712fd02-171c-5995-3f18-84e885c380b9" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_bd3fb4a2-dba4-9f41-2b9f-30441850eb67" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_E2D30DB48F74D6E8B451A82D97F17A71" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_8712fd02-171c-5995-3f18-84e885c380b9" xlink:to="loc_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_E2D30DB48F74D6E8B451A82D97F17A71" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CABE671DD5FDD2CC69AB08E8947CC139" xlink:type="locator" />
    <link:calculationArc order="6" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_8712fd02-171c-5995-3f18-84e885c380b9" xlink:to="loc_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CABE671DD5FDD2CC69AB08E8947CC139" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_8718aa1e-c40a-73dd-11d3-b6a4475e0d37" xlink:type="locator" />
    <link:calculationArc order="7" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_8712fd02-171c-5995-3f18-84e885c380b9" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_8718aa1e-c40a-73dd-11d3-b6a4475e0d37" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_e076fca2-751d-53ee-27b4-64a5b6f5b217" xlink:type="locator" />
    <link:calculationArc order="8" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_8712fd02-171c-5995-3f18-84e885c380b9" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_e076fca2-751d-53ee-27b4-64a5b6f5b217" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/TaxesTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/WarrantyObligations" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/WarrantyObligationsChangesInWarrantyObligationsDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/WarrantyObligationsTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/WeightedAverageShares" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesCalculationOfWeightedAverageSharesDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_008DBA0EAD255F8BAB06D8CFEBEAC16C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_93C1155FA306506CBEFB71C08EB14672" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_008DBA0EAD255F8BAB06D8CFEBEAC16C" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_93C1155FA306506CBEFB71C08EB14672" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_567185554B4B5E6E8F59A1CAF05273FE" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_008DBA0EAD255F8BAB06D8CFEBEAC16C" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_567185554B4B5E6E8F59A1CAF05273FE" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesTables" xlink:type="extended" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>9
<FILENAME>cgnx-20180930_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!-- -->
<link:linkbase 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:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestments" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestments" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsComponentsOfCashCashEquivalentsAndInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsComponentsOfCashCashEquivalentsAndInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsEffectiveMaturityDatesOfAvailableForSaleInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsEffectiveMaturityDatesOfAvailableForSaleInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsGrossUnrealizedLossesAndFairValuesForAvailableForSaleInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsGrossUnrealizedLossesAndFairValuesForAvailableForSaleInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsSummaryOfAvailableForSaleInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsSummaryOfAvailableForSaleInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsTables" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheets" xlink:href="cgnx-20180930.xsd#ConsolidatedBalanceSheets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:href="cgnx-20180930.xsd#ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquity" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementOfShareholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquityParenthetical" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementOfShareholdersEquityParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfCashFlows" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementsOfCashFlows" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncome" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementsOfComprehensiveIncome" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncomeParenthetical" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementsOfComprehensiveIncomeParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfOperations" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementsOfOperations" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstruments" xlink:href="cgnx-20180930.xsd#DerivativeInstruments" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsDerivativeInstrumentsGainLossDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsOffsettingAssetsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsOutstandingForwardContractsTableDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsTables" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DocumentAndEntityInformation" xlink:href="cgnx-20180930.xsd#DocumentAndEntityInformation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurements" xlink:href="cgnx-20180930.xsd#FairValueMeasurements" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurementsAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetail" xlink:href="cgnx-20180930.xsd#FairValueMeasurementsAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurementsLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationDetails" xlink:href="cgnx-20180930.xsd#FairValueMeasurementsLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurementsTables" xlink:href="cgnx-20180930.xsd#FairValueMeasurementsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssets" xlink:href="cgnx-20180930.xsd#IntangibleAssets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssetsDetails" xlink:href="cgnx-20180930.xsd#IntangibleAssetsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssetsTables" xlink:href="cgnx-20180930.xsd#IntangibleAssetsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/Inventories" xlink:href="cgnx-20180930.xsd#Inventories" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/InventoriesScheduleOfInventoriesDetail" xlink:href="cgnx-20180930.xsd#InventoriesScheduleOfInventoriesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/InventoriesTables" xlink:href="cgnx-20180930.xsd#InventoriesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/NewPronouncements" xlink:href="cgnx-20180930.xsd#NewPronouncements" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognition" xlink:href="cgnx-20180930.xsd#RevenueRecognition" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionAdditionalInformationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionDeferredRevenueActivityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionImpactOnBalanceSheetDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionImpactOnBalanceSheetDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionImpactOnStatementOfOperationsDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionImpactOnStatementOfOperationsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByGeographyDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionRevenueDisaggregatedByGeographyDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByProductsAndServicesDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionRevenueDisaggregatedByProductsAndServicesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionTables" xlink:href="cgnx-20180930.xsd#RevenueRecognitionTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpense" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpense" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseDetail" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseNonvestedRestrictedStockSharesActivityDetails" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseNonvestedRestrictedStockSharesActivityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsDetail" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseSummaryOfStockOptionActivityDetail" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseSummaryOfStockOptionActivityDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseTables" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedInEstimatingFairValuesOfStockOptionsGrantedDetail" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseWeightedAverageAssumptionsUsedInEstimatingFairValuesOfStockOptionsGrantedDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockRepurchaseProgram" xlink:href="cgnx-20180930.xsd#StockRepurchaseProgram" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockRepurchaseProgramDetail" xlink:href="cgnx-20180930.xsd#StockRepurchaseProgramDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/SubsequentEvents" xlink:href="cgnx-20180930.xsd#SubsequentEvents" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/SubsequentEventsDetails" xlink:href="cgnx-20180930.xsd#SubsequentEventsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/SummaryOfSignificantAccountingPolicies" xlink:href="cgnx-20180930.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="cgnx-20180930.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/Taxes" xlink:href="cgnx-20180930.xsd#Taxes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/TaxesDetail" xlink:href="cgnx-20180930.xsd#TaxesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/TaxesReconciliationOfUnitedStatesFederalStatutoryCorporateTaxRateToCompanysEffectiveTaxRateOrIncomeTaxProvisionDetail" xlink:href="cgnx-20180930.xsd#TaxesReconciliationOfUnitedStatesFederalStatutoryCorporateTaxRateToCompanysEffectiveTaxRateOrIncomeTaxProvisionDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/TaxesTables" xlink:href="cgnx-20180930.xsd#TaxesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WarrantyObligations" xlink:href="cgnx-20180930.xsd#WarrantyObligations" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WarrantyObligationsChangesInWarrantyObligationsDetail" xlink:href="cgnx-20180930.xsd#WarrantyObligationsChangesInWarrantyObligationsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WarrantyObligationsTables" xlink:href="cgnx-20180930.xsd#WarrantyObligationsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageShares" xlink:href="cgnx-20180930.xsd#WeightedAverageShares" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesCalculationOfWeightedAverageSharesDetail" xlink:href="cgnx-20180930.xsd#WeightedAverageSharesCalculationOfWeightedAverageSharesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesDetail" xlink:href="cgnx-20180930.xsd#WeightedAverageSharesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesTables" xlink:href="cgnx-20180930.xsd#WeightedAverageSharesTables" xlink:type="simple" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" xlink:type="simple" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" xlink:type="simple" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" xlink:type="simple" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" xlink:type="simple" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" xlink:type="simple" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestments" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsComponentsOfCashCashEquivalentsAndInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesTable" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_5C176A0CDE24EB0729DBA7E494BB459C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_5C176A0CDE24EB0729DBA7E494BB459C" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_8B4B801B72C01536E08BA7E494BB38E4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_5C176A0CDE24EB0729DBA7E494BB459C" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_8B4B801B72C01536E08BA7E494BB38E4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_8B4B801B72C01536E08BA7E494BB38E4" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_8B4B801B72C01536E08BA7E494BB38E4" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_A467E8FAD90769335695A7E494BC8217" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_A467E8FAD90769335695A7E494BC8217" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CorporateBondSecuritiesMember" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_01F48108ACE99455AE16A7E494BC9B19" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_01F48108ACE99455AE16A7E494BC9B19" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetBackedSecuritiesMember" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_D5E94E767B48E29E94D2A7E494BCFF57" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_D5E94E767B48E29E94D2A7E494BCFF57" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtMember" xlink:label="loc_us-gaap_SovereignDebtMember_3F69505AFF533B55C70DA7EA28419B55" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_us-gaap_SovereignDebtMember_3F69505AFF533B55C70DA7EA28419B55" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtSecuritiesMember" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_C6D567954107C63DE2CCA7E494BC0CE5" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_C6D567954107C63DE2CCA7E494BC0CE5" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AgencyBondsMember" xlink:label="loc_cgnx_AgencyBondsMember_9A14E8AB428F4987BC1EA7E494BD6529" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_cgnx_AgencyBondsMember_9A14E8AB428F4987BC1EA7E494BD6529" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MunicipalBondsMember" xlink:label="loc_us-gaap_MunicipalBondsMember_C954139921D1BCB3A373A7E494BE499F" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_us-gaap_MunicipalBondsMember_C954139921D1BCB3A373A7E494BE499F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Cash" xlink:label="loc_us-gaap_Cash_6819883AF5ADB0886C62A7E494BE1B85" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_Cash_6819883AF5ADB0886C62A7E494BE1B85" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MoneyMarketFundsAtCarryingValue" xlink:label="loc_us-gaap_MoneyMarketFundsAtCarryingValue_6571BAF2EF03ED2814A5A7E494BFE168" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_MoneyMarketFundsAtCarryingValue_6571BAF2EF03ED2814A5A7E494BFE168" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_C0E27DE771F376F27B92A7E494BF84FE" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_C0E27DE771F376F27B92A7E494BF84FE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_135D13C999C13DD363B7A7E494BF651A" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_135D13C999C13DD363B7A7E494BF651A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_700A57F2F3CE772EE147A7E494BF894A" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_700A57F2F3CE772EE147A7E494BF894A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LongTermInvestments" xlink:label="loc_us-gaap_LongTermInvestments_872C638FD6E0D23A7DDAA7E494BFFCDB" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_LongTermInvestments_872C638FD6E0D23A7DDAA7E494BFFCDB" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_CashCashEquivalentsShortTermAndLongTermInvestments" xlink:label="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsEffectiveMaturityDatesOfAvailableForSaleInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesTable" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CorporateBondSecuritiesMember" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_86753CECC7B72B575117A6E2966D1B8C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_86753CECC7B72B575117A6E2966D1B8C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_1A92125F3A05EAE7EEAFA6E2966EB25C" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_1A92125F3A05EAE7EEAFA6E2966EB25C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetBackedSecuritiesMember" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_737AEA3C7E7CDCDBCCA5A6E2966EA9FE" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_737AEA3C7E7CDCDBCCA5A6E2966EA9FE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtSecuritiesMember" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_E09319DC48846DFBC4E7A6E2966E342F" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_E09319DC48846DFBC4E7A6E2966E342F" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AgencyBondsMember" xlink:label="loc_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="loc_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MunicipalBondsMember" xlink:label="loc_us-gaap_MunicipalBondsMember_593D0A479B5EF693CA31A6E2966ED5C9" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="loc_us-gaap_MunicipalBondsMember_593D0A479B5EF693CA31A6E2966ED5C9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_6F29441AEB401A5911D5A6E2966FAFA5" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_6F29441AEB401A5911D5A6E2966FAFA5" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_C400FC229053A7A928CAA6E29670C8CE" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_C400FC229053A7A928CAA6E29670C8CE" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsGrossUnrealizedLossesAndFairValuesForAvailableForSaleInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesTable" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_52CAE6B6130AB736083BACEF105F22C4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_52CAE6B6130AB736083BACEF105F22C4" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_D28C4D67A337FFB58CDBACEF105F29AC" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_52CAE6B6130AB736083BACEF105F22C4" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_D28C4D67A337FFB58CDBACEF105F29AC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_D28C4D67A337FFB58CDBACEF105F29AC" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_D28C4D67A337FFB58CDBACEF105F29AC" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_07F76FA43A33429C51B7ACEF1060809F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_07F76FA43A33429C51B7ACEF1060809F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CorporateBondSecuritiesMember" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_68B7D4125B4CDC346A7DACEF106076DB" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_68B7D4125B4CDC346A7DACEF106076DB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetBackedSecuritiesMember" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_2EC2588255779A339D8DACEF10609570" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_2EC2588255779A339D8DACEF10609570" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtSecuritiesMember" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_D63C0BFD2EFF5D6D4261ACEF106037F2" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_D63C0BFD2EFF5D6D4261ACEF106037F2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MunicipalBondsMember" xlink:label="loc_us-gaap_MunicipalBondsMember_D4B2802A0AC8C9F8D823ACEF106198CE" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:to="loc_us-gaap_MunicipalBondsMember_D4B2802A0AC8C9F8D823ACEF106198CE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_76CAFE7C2F8BE0609B3BACEF106139B1" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_76CAFE7C2F8BE0609B3BACEF106139B1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_169D2DBE61F5626280B3ACEF10610CDA" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_169D2DBE61F5626280B3ACEF10610CDA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_348D2EA2DAF2F9DADC5DACEF106193C2" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_348D2EA2DAF2F9DADC5DACEF106193C2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_BA5331F16DD445431841ACEF1061CECA" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_BA5331F16DD445431841ACEF1061CECA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_DAA251287549B5469A49ACEF10621ED3" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_DAA251287549B5469A49ACEF10621ED3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5D2E572661FC4CF50D92ACEF1062DEB3" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5D2E572661FC4CF50D92ACEF1062DEB3" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsSummaryOfAvailableForSaleInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_59096C4FDD1BAE9F17A3ACE68FEFB815" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesTable" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_FFA6323984AA76FEEC30ACE68FE38152" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_59096C4FDD1BAE9F17A3ACE68FEFB815" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_FFA6323984AA76FEEC30ACE68FE38152" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_0B266F127BF0DD3D02A1ACE68FE6F395" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_FFA6323984AA76FEEC30ACE68FE38152" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_0B266F127BF0DD3D02A1ACE68FE6F395" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_0B266F127BF0DD3D02A1ACE68FE6F395" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_0B266F127BF0DD3D02A1ACE68FE6F395" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AgencyBondsMember" xlink:label="loc_cgnx_AgencyBondsMember_3D80C52CD534434136C4ACE68FEEF133" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:to="loc_cgnx_AgencyBondsMember_3D80C52CD534434136C4ACE68FEEF133" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_07C0C26A1A72F2BE535FACE68FEC48C6" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_07C0C26A1A72F2BE535FACE68FEC48C6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CorporateBondSecuritiesMember" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_A7495B42157D1E86CBBDACE68FEDD69D" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_A7495B42157D1E86CBBDACE68FEDD69D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetBackedSecuritiesMember" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_F4A77DAB0735D2411A71ACE68FEEC08D" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_F4A77DAB0735D2411A71ACE68FEEC08D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtSecuritiesMember" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_C5E7A4D81B746FE9AFFCACE68FEE6AD4" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_C5E7A4D81B746FE9AFFCACE68FEE6AD4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MunicipalBondsMember" xlink:label="loc_us-gaap_MunicipalBondsMember_447E5F4C2200B89B6536ACE68FEE17BD" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:to="loc_us-gaap_MunicipalBondsMember_447E5F4C2200B89B6536ACE68FEE17BD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentTypeAxis" xlink:label="loc_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_FFA6323984AA76FEEC30ACE68FE38152" xlink:to="loc_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShortTermInvestmentsMember" xlink:label="loc_us-gaap_ShortTermInvestmentsMember_E662976120854C9351B3ACE68FEF94EE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:to="loc_us-gaap_ShortTermInvestmentsMember_E662976120854C9351B3ACE68FEF94EE" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_LongTermInvestmentsMember" xlink:label="loc_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:to="loc_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_DC0CC5251D0271EECF3FACE68FF0C824" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_59096C4FDD1BAE9F17A3ACE68FEFB815" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_DC0CC5251D0271EECF3FACE68FF0C824" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_FF1C20E74C0828B25FFEACE68FF037A0" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_59096C4FDD1BAE9F17A3ACE68FEFB815" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_FF1C20E74C0828B25FFEACE68FF037A0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5E1A767B4C9E19518C06ACE68FF0D278" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_59096C4FDD1BAE9F17A3ACE68FEFB815" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5E1A767B4C9E19518C06ACE68FF0D278" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecurities_C5FF0D43AD4B76AD74CAACE68FF0B268" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_59096C4FDD1BAE9F17A3ACE68FEFB815" xlink:to="loc_us-gaap_AvailableForSaleSecurities_C5FF0D43AD4B76AD74CAACE68FF0B268" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/ConsolidatedBalanceSheets" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquity" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716" xlink:to="loc_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B" xlink:to="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B" xlink:to="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_84A3A6067236A394DDA3A2DC9D23EDF2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:to="loc_us-gaap_CommonStockMember_84A3A6067236A394DDA3A2DC9D23EDF2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_B6F92FD4A17870163763A2DC9D23184E" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_B6F92FD4A17870163763A2DC9D23184E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_957F52071C30951120D2A2DC9D23A494" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:to="loc_us-gaap_RetainedEarningsMember_957F52071C30951120D2A2DC9D23A494" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_20EE3DBCA908B4CFF1CCA2DC9D245B91" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_20EE3DBCA908B4CFF1CCA2DC9D245B91" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_BEB7D3649FD61092C354A2DC9D2A8540" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_CommonStockSharesIssued_BEB7D3649FD61092C354A2DC9D2A8540" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_804B09B9C6F9DC3BE51AA2DC9D2A6032" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_StockholdersEquity_804B09B9C6F9DC3BE51AA2DC9D2A6032" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_37FB51A778471E21906AA2DC9D2AE01B" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_37FB51A778471E21906AA2DC9D2AE01B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_16204B7177111D4D159DA2DC9D2A65F6" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_16204B7177111D4D159DA2DC9D2A65F6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares_E412DB9096B2B29F8557A2DC9D2A7B43" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodShares_E412DB9096B2B29F8557A2DC9D2A7B43" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue_57A5963EEB1B86D6749DA2DC9D2A4377" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodValue_57A5963EEB1B86D6749DA2DC9D2A4377" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7510CC8F06F8A50581DEA2DC9D2BF785" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7510CC8F06F8A50581DEA2DC9D2BF785" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DividendsCash" xlink:label="loc_us-gaap_DividendsCash_48C141D5DAFC06497E66A2DC9D2B9472" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_DividendsCash_48C141D5DAFC06497E66A2DC9D2B9472" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:label="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_0A5CCEF394CCE2FB951CA2DC9D2B833F" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_0A5CCEF394CCE2FB951CA2DC9D2B833F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_422678CFECBD51DA604CA2DC9D2B49EA" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_NetIncomeLoss_422678CFECBD51DA604CA2DC9D2B49EA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_0DB67CC8FF85FFA2F4F0A2DC9D2C1BE4" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_0DB67CC8FF85FFA2F4F0A2DC9D2C1BE4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_B60B8DD90D824635F0B7A2DC9D2C40A5" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_B60B8DD90D824635F0B7A2DC9D2C40A5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_0D89E48294C45F0306F1A2DC9D2CFF5E" xlink:type="locator" />
    <link:definitionArc order="13" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_0D89E48294C45F0306F1A2DC9D2CFF5E" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquityParenthetical" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncome" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncomeParenthetical" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsOfOperations" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/DerivativeInstruments" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_35D0EA8276A85245A00629C1C181EA3E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:to="loc_us-gaap_HedgingDesignationAxis_35D0EA8276A85245A00629C1C181EA3E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_78371F15E1BB07F692E6A9F25CDE2104_35335C8613DC5483A4977465BA3F6459" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_35D0EA8276A85245A00629C1C181EA3E" xlink:to="loc_us-gaap_HedgingDesignationDomain_78371F15E1BB07F692E6A9F25CDE2104_35335C8613DC5483A4977465BA3F6459" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_35D0EA8276A85245A00629C1C181EA3E" xlink:to="loc_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_11BD7CB215A0504F844D1962EE44EFDF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_11BD7CB215A0504F844D1962EE44EFDF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="loc_us-gaap_NondesignatedMember_7C55823B11A954AFA59DFDC1CAFE618A" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:to="loc_us-gaap_NondesignatedMember_7C55823B11A954AFA59DFDC1CAFE618A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_DB31ABF445DE59EF9FD91D93DD8ED3E4" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_DB31ABF445DE59EF9FD91D93DD8ED3E4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_FA078DF786158A94AC49A9F25CDFC2E2_35335C8613DC5483A4977465BA3F6459" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_DB31ABF445DE59EF9FD91D93DD8ED3E4" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_FA078DF786158A94AC49A9F25CDFC2E2_35335C8613DC5483A4977465BA3F6459" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_DB31ABF445DE59EF9FD91D93DD8ED3E4" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashFlowHedgingMember" xlink:label="loc_us-gaap_CashFlowHedgingMember_2B2BEEA4C3535E4CA926CC1247382604" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:to="loc_us-gaap_CashFlowHedgingMember_2B2BEEA4C3535E4CA926CC1247382604" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueGoodsNetMember" xlink:label="loc_us-gaap_SalesRevenueGoodsNetMember_5E3DE8D99E60518A9099E536464C98FC" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:to="loc_us-gaap_SalesRevenueGoodsNetMember_5E3DE8D99E60518A9099E536464C98FC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_9FAF6588A7E65897B82C4722C62C3DCB" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_9FAF6588A7E65897B82C4722C62C3DCB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_735F44E8450155299EECBB466D378615" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_735F44E8450155299EECBB466D378615" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCurrencyGainLossMember" xlink:label="loc_us-gaap_ForeignCurrencyGainLossMember_4116E869B46455F98130ACCBDFECBB8C" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:to="loc_us-gaap_ForeignCurrencyGainLossMember_4116E869B46455F98130ACCBDFECBB8C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet_659F1CC045FA5BA9BE536F5E540D9474" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet_659F1CC045FA5BA9BE536F5E540D9474" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_CCD1910F5C505D4DBE629A914A8390A0" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_CCD1910F5C505D4DBE629A914A8390A0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_4D037D12D37A586F9F7F7937405185A6" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_4D037D12D37A586F9F7F7937405185A6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_06C84226DDF9579A90801B45D935CD38" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_06C84226DDF9579A90801B45D935CD38" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeGainLossOnDerivativeNet" xlink:label="loc_us-gaap_DerivativeGainLossOnDerivativeNet_0B89F2B1ECB45E008A9248B752806252" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:to="loc_us-gaap_DerivativeGainLossOnDerivativeNet_0B89F2B1ECB45E008A9248B752806252" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_8A55222F45B27AB69F4CA6E296302CBC" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77" xlink:to="loc_us-gaap_HedgingDesignationAxis_8A55222F45B27AB69F4CA6E296302CBC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_1C773996869D889CB9D7A6E296314AA3_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_8A55222F45B27AB69F4CA6E296302CBC" xlink:to="loc_us-gaap_HedgingDesignationDomain_1C773996869D889CB9D7A6E296314AA3_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_1C773996869D889CB9D7A6E296314AA3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_8A55222F45B27AB69F4CA6E296302CBC" xlink:to="loc_us-gaap_HedgingDesignationDomain_1C773996869D889CB9D7A6E296314AA3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_C8DEFA883E14CEEF4780A6E29631F1C8" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_1C773996869D889CB9D7A6E296314AA3" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_C8DEFA883E14CEEF4780A6E29631F1C8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="loc_us-gaap_NondesignatedMember_D62219746B50F51C755CA6E296313F3F" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_1C773996869D889CB9D7A6E296314AA3" xlink:to="loc_us-gaap_NondesignatedMember_D62219746B50F51C755CA6E296313F3F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:label="loc_us-gaap_DerivativeNumberOfInstrumentsHeld_E3039CB4C386343509C1A6E296324266" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:to="loc_us-gaap_DerivativeNumberOfInstrumentsHeld_E3039CB4C386343509C1A6E296324266" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1" xlink:label="loc_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_EFDB9EFCB0763633F24DA6E296324679" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:to="loc_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_EFDB9EFCB0763633F24DA6E296324679" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1" xlink:label="loc_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1_68763F6CD3E7AFB70E40A6E296323F54" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:to="loc_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1_68763F6CD3E7AFB70E40A6E296323F54" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeLineItems" xlink:label="loc_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeTable" xlink:label="loc_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD" xlink:to="loc_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_652C09689E8EAAB2380DAB039D576229" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:to="loc_us-gaap_HedgingDesignationAxis_652C09689E8EAAB2380DAB039D576229" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_1A2770C45D09046009CFAB039D574BE1_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_652C09689E8EAAB2380DAB039D576229" xlink:to="loc_us-gaap_HedgingDesignationDomain_1A2770C45D09046009CFAB039D574BE1_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_1A2770C45D09046009CFAB039D574BE1" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_652C09689E8EAAB2380DAB039D576229" xlink:to="loc_us-gaap_HedgingDesignationDomain_1A2770C45D09046009CFAB039D574BE1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_D2A1AAA5CC323EE51ACBAB039D57BBCB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_1A2770C45D09046009CFAB039D574BE1" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_D2A1AAA5CC323EE51ACBAB039D57BBCB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="loc_us-gaap_NondesignatedMember_4E1C793CA335AEC0EC0DAB039D57AFDA" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_1A2770C45D09046009CFAB039D574BE1" xlink:to="loc_us-gaap_NondesignatedMember_4E1C793CA335AEC0EC0DAB039D57AFDA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CurrencyAxis" xlink:label="loc_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:to="loc_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_AllCurrenciesDomain" xlink:label="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443" xlink:to="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_AllCurrenciesDomain" xlink:label="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443" xlink:to="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_EUR" xlink:label="loc_currency_EUR_ADF1C3F5F578C11D8FC6AB039D573C9A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_EUR_ADF1C3F5F578C11D8FC6AB039D573C9A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_JPY" xlink:label="loc_currency_JPY_CAAB1E17DD5823EE7D69AB039D57F79C" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_JPY_CAAB1E17DD5823EE7D69AB039D57F79C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_GBP" xlink:label="loc_currency_GBP_DB6D9F46525D0DC5A17EAB039D57942B" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_GBP_DB6D9F46525D0DC5A17EAB039D57942B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_HUF" xlink:label="loc_currency_HUF_39045233C091A2348A8DAB039D578560" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_HUF_39045233C091A2348A8DAB039D578560" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_KRW" xlink:label="loc_currency_KRW_A4F1B5B34FDC79E7BCC7AB039D573974" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_KRW_A4F1B5B34FDC79E7BCC7AB039D573974" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_TWD" xlink:label="loc_currency_TWD_E6025CE6D4A82278AD37AB039D571CEE" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_TWD_E6025CE6D4A82278AD37AB039D571CEE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_CAD" xlink:label="loc_currency_CAD_FB036F855D0DD9BE07D6AB039D5712E1" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_CAD_FB036F855D0DD9BE07D6AB039D5712E1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_SGD" xlink:label="loc_currency_SGD_303B4B33CC44963BA1C0AB039D5798D9" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_SGD_303B4B33CC44963BA1C0AB039D5798D9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_CHF" xlink:label="loc_currency_CHF_E7A2672CEA0ECC4E78E9AB03E42B336F" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_CHF_E7A2672CEA0ECC4E78E9AB03E42B336F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeAssetNotionalAmount" xlink:label="loc_us-gaap_DerivativeAssetNotionalAmount_F1BB1EFFC26AF643B613AB039D579846" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD" xlink:to="loc_us-gaap_DerivativeAssetNotionalAmount_F1BB1EFFC26AF643B613AB039D579846" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativesFairValueLineItems" xlink:label="loc_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:label="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:to="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_94E1E5D2B6A1FCDA0554A6E2961FDE10" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:to="loc_us-gaap_HedgingDesignationAxis_94E1E5D2B6A1FCDA0554A6E2961FDE10" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_EBC544359525F43E269AA6E2961FAA42_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_94E1E5D2B6A1FCDA0554A6E2961FDE10" xlink:to="loc_us-gaap_HedgingDesignationDomain_EBC544359525F43E269AA6E2961FAA42_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_EBC544359525F43E269AA6E2961FAA42" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_94E1E5D2B6A1FCDA0554A6E2961FDE10" xlink:to="loc_us-gaap_HedgingDesignationDomain_EBC544359525F43E269AA6E2961FAA42" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="loc_us-gaap_NondesignatedMember_D1A8B386D58A4B8945F5A6E296205C4D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_EBC544359525F43E269AA6E2961FAA42" xlink:to="loc_us-gaap_NondesignatedMember_D1A8B386D58A4B8945F5A6E296205C4D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:label="loc_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_BD86C14793ADFC1ED3F0A6E296219568" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:to="loc_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_BD86C14793ADFC1ED3F0A6E296219568" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AccruedExpensesMember" xlink:label="loc_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:to="loc_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_EE452B951C3667126109A6E296210E1B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:to="loc_us-gaap_DerivativeAssets_EE452B951C3667126109A6E296210E1B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_71CD43CE6A71328D1432A6E296224F83" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:to="loc_us-gaap_DerivativeLiabilities_71CD43CE6A71328D1432A6E296224F83" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/DocumentAndEntityInformation" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/FairValueMeasurements" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/FairValueMeasurementsAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_B63EB54D855B23199409A81CA2A35613" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_B63EB54D855B23199409A81CA2A35613" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_FEF7DE97BEFD0B42B900A81CA2A4F2E3_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_B63EB54D855B23199409A81CA2A35613" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_FEF7DE97BEFD0B42B900A81CA2A4F2E3_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_FEF7DE97BEFD0B42B900A81CA2A4F2E3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_B63EB54D855B23199409A81CA2A35613" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_FEF7DE97BEFD0B42B900A81CA2A4F2E3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_4F01A4E800A4386F4E79A81CA2A4910F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_FEF7DE97BEFD0B42B900A81CA2A4F2E3" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_4F01A4E800A4386F4E79A81CA2A4910F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_9E8F008982D82CE46F12A81CA2A54EBF" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_FEF7DE97BEFD0B42B900A81CA2A4F2E3" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_9E8F008982D82CE46F12A81CA2A54EBF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_8E54867BD4E624F36EDBA81CA2A5733D" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_FEF7DE97BEFD0B42B900A81CA2A4F2E3" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_8E54867BD4E624F36EDBA81CA2A5733D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_A96F8213B507AFDB9554A81CA2A59F24" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_A96F8213B507AFDB9554A81CA2A59F24" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_76232CBB6ADF53DDF73DA81CA2A66F93_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_A96F8213B507AFDB9554A81CA2A59F24" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_76232CBB6ADF53DDF73DA81CA2A66F93_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_76232CBB6ADF53DDF73DA81CA2A66F93" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_A96F8213B507AFDB9554A81CA2A59F24" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_76232CBB6ADF53DDF73DA81CA2A66F93" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember_3D72BA342A69CDC32A3FA81CA2A696D7" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_76232CBB6ADF53DDF73DA81CA2A66F93" xlink:to="loc_us-gaap_FairValueMeasurementsRecurringMember_3D72BA342A69CDC32A3FA81CA2A696D7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_85FF36BBA4372A38AEFAA81CA2A6E4A6" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_85FF36BBA4372A38AEFAA81CA2A6E4A6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_85FF36BBA4372A38AEFAA81CA2A6E4A6" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_85FF36BBA4372A38AEFAA81CA2A6E4A6" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CorporateBondSecuritiesMember" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_288A51E0E4A9B74E4861A81CA2A749E4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_288A51E0E4A9B74E4861A81CA2A749E4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_E86E8A84893653537C97A81CA2A75DC7" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_E86E8A84893653537C97A81CA2A75DC7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetBackedSecuritiesMember" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_30D9444D0C708506E5FDA81CA2A7A4EC" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_30D9444D0C708506E5FDA81CA2A7A4EC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtSecuritiesMember" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_B0D71FB5369783DC5E78A81CA2A85390" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_B0D71FB5369783DC5E78A81CA2A85390" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AgencyBondsMember" xlink:label="loc_cgnx_AgencyBondsMember_C5EBF810E200D55CE46CA81CA2A815BA" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:to="loc_cgnx_AgencyBondsMember_C5EBF810E200D55CE46CA81CA2A815BA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MunicipalBondsMember" xlink:label="loc_us-gaap_MunicipalBondsMember_5DA1203DAC762FB6BF8EA81CA2A84744" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:to="loc_us-gaap_MunicipalBondsMember_5DA1203DAC762FB6BF8EA81CA2A84744" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsFairValueDisclosureAbstract" xlink:label="loc_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:to="loc_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MoneyMarketFundsAtCarryingValue" xlink:label="loc_us-gaap_MoneyMarketFundsAtCarryingValue_43820E06E5A4AD8BDE55A81CA2AE2DB5" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:to="loc_us-gaap_MoneyMarketFundsAtCarryingValue_43820E06E5A4AD8BDE55A81CA2AE2DB5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_176795C6CB0BEDB61879A81CA2AF38FA" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_176795C6CB0BEDB61879A81CA2AF38FA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCurrencyContractAssetFairValueDisclosure" xlink:label="loc_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_A4B8DDDA70FBFFDD1C7BA81CA2AF3FCA" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:to="loc_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_A4B8DDDA70FBFFDD1C7BA81CA2AF3FCA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure" xlink:label="loc_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_F782291DA3DEDD512E14A81CA2AFDB98" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:to="loc_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_F782291DA3DEDD512E14A81CA2AFDB98" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_F9F7E7D5018689B752CBA81CA2B09138" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_F9F7E7D5018689B752CBA81CA2B09138" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/FairValueMeasurementsLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:to="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_CE8CFD3BDB245574BC05E904A71EACCD" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_CE8CFD3BDB245574BC05E904A71EACCD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_CC3211FD51E6023E6DF6B895CE6BE73B_35335C8613DC5483A4977465BA3F6459" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_CE8CFD3BDB245574BC05E904A71EACCD" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_CC3211FD51E6023E6DF6B895CE6BE73B_35335C8613DC5483A4977465BA3F6459" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_CE8CFD3BDB245574BC05E904A71EACCD" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ManateeWorksInc.Member" xlink:label="loc_cgnx_ManateeWorksInc.Member_F2ACEACDF66A5D82BB5A4A02B853228C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:to="loc_cgnx_ManateeWorksInc.Member_F2ACEACDF66A5D82BB5A4A02B853228C" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_GViVenturesInc.Member" xlink:label="loc_cgnx_GViVenturesInc.Member_77D6E1214CC55568AA7AB3DC72CC13EB" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:to="loc_cgnx_GViVenturesInc.Member_77D6E1214CC55568AA7AB3DC72CC13EB" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ChiaroTechnologiesLLCMember" xlink:label="loc_cgnx_ChiaroTechnologiesLLCMember_F2E2C7E2D798592191299064C9F71185" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:to="loc_cgnx_ChiaroTechnologiesLLCMember_F2E2C7E2D798592191299064C9F71185" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_415C766AAA9D5E2F95D2ECFD6FA44199" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_415C766AAA9D5E2F95D2ECFD6FA44199" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_BDD48DE2A5884A55AC01B895CE6C4E8C_35335C8613DC5483A4977465BA3F6459" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_415C766AAA9D5E2F95D2ECFD6FA44199" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_BDD48DE2A5884A55AC01B895CE6C4E8C_35335C8613DC5483A4977465BA3F6459" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_E2DF88656DDB5A00B20E4EB0DD4CF62E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_415C766AAA9D5E2F95D2ECFD6FA44199" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_E2DF88656DDB5A00B20E4EB0DD4CF62E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_CC2542F0E8FF5F539AE0B270A6BF9AD9" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_E2DF88656DDB5A00B20E4EB0DD4CF62E" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_CC2542F0E8FF5F539AE0B270A6BF9AD9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_C8F88600DA875D2A801B9CF67E0F6110" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_C8F88600DA875D2A801B9CF67E0F6110" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_531E23A3C9BCECE7D99BB895CE6D4689_35335C8613DC5483A4977465BA3F6459" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_C8F88600DA875D2A801B9CF67E0F6110" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_531E23A3C9BCECE7D99BB895CE6D4689_35335C8613DC5483A4977465BA3F6459" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_D7B35A9A93E656DF94353A8B040F3D92" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_C8F88600DA875D2A801B9CF67E0F6110" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_D7B35A9A93E656DF94353A8B040F3D92" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember_992F570581D751A5976BAAC3BFD6AF42" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_D7B35A9A93E656DF94353A8B040F3D92" xlink:to="loc_us-gaap_FairValueMeasurementsRecurringMember_992F570581D751A5976BAAC3BFD6AF42" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_37B2CC2A18755E3F9E88A9AAFC0F96EB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_37B2CC2A18755E3F9E88A9AAFC0F96EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesFairValueAdjustment" xlink:label="loc_us-gaap_LiabilitiesFairValueAdjustment_A33706A02215560DB8F2C6618D2C3B7D" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:to="loc_us-gaap_LiabilitiesFairValueAdjustment_A33706A02215560DB8F2C6618D2C3B7D" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Paymentofcontingentconsideration" xlink:label="loc_cgnx_Paymentofcontingentconsideration_205420FE8C3C55AA85178D7366E4B640" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:to="loc_cgnx_Paymentofcontingentconsideration_205420FE8C3C55AA85178D7366E4B640" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/FairValueMeasurementsTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/IntangibleAssets" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/IntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_AD471BCF4F0557A58B17CDF9C6392795" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_AD471BCF4F0557A58B17CDF9C6392795" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57CB7AD7C14B5434AE3512B653086E36" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_AD471BCF4F0557A58B17CDF9C6392795" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57CB7AD7C14B5434AE3512B653086E36" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_D7AE2E3479A591C03F55B895CE23540D_35335C8613DC5483A4977465BA3F6459" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57CB7AD7C14B5434AE3512B653086E36" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_D7AE2E3479A591C03F55B895CE23540D_35335C8613DC5483A4977465BA3F6459" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57CB7AD7C14B5434AE3512B653086E36" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DistributionRightsMember" xlink:label="loc_us-gaap_DistributionRightsMember_4C88E126A1CD5CB785645FD509BB67F9" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:to="loc_us-gaap_DistributionRightsMember_4C88E126A1CD5CB785645FD509BB67F9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_48D9A251F5A35450A7C81678E22D3CB4" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:to="loc_us-gaap_DevelopedTechnologyRightsMember_48D9A251F5A35450A7C81678E22D3CB4" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_CustomerContractsAndRelationshipsMember" xlink:label="loc_cgnx_CustomerContractsAndRelationshipsMember_4C6AD98833375E4CA1B263304FFFA1A6" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:to="loc_cgnx_CustomerContractsAndRelationshipsMember_4C6AD98833375E4CA1B263304FFFA1A6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherIntangibleAssetsMember" xlink:label="loc_us-gaap_OtherIntangibleAssetsMember_0F1E53DBE755543D94379542024ADA11" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:to="loc_us-gaap_OtherIntangibleAssetsMember_0F1E53DBE755543D94379542024ADA11" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_5BB979F7034D57F8A7D76B498C542FD6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_5BB979F7034D57F8A7D76B498C542FD6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_F1A416C48DAB5EC3B604B0936816016A" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_F1A416C48DAB5EC3B604B0936816016A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3A16109ED16A5CCF94C8D3E4ABDBCADD" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3A16109ED16A5CCF94C8D3E4ABDBCADD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_94E6726B270257E1BBDD15C873FFA13B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_94E6726B270257E1BBDD15C873FFA13B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_E872696E647252C69AF62C395CB26280" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_E872696E647252C69AF62C395CB26280" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_5BDF63115A6950F58818DBEFE6FC9263" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_5BDF63115A6950F58818DBEFE6FC9263" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_892F09C85977569FB02998CD8B3F937A" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_892F09C85977569FB02998CD8B3F937A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_5EA77F446D865BB3A6C8F801CE810575" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_5EA77F446D865BB3A6C8F801CE810575" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_3D25A02FCBA75E2FAD1A3739C8DF7F74" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_3D25A02FCBA75E2FAD1A3739C8DF7F74" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_3A66DDBEE76158C8B2533CECAE5935F9" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_3A66DDBEE76158C8B2533CECAE5935F9" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/IntangibleAssetsTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/Inventories" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/InventoriesScheduleOfInventoriesDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/InventoriesTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/NewPronouncements" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/RevenueRecognition" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/RevenueRecognitionImpactOnBalanceSheetDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_2C71D1D50B5573D0BC2EAD7EA1532D5B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_0D4C05B017AF0619F104AD7EA1525BF3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_2C71D1D50B5573D0BC2EAD7EA1532D5B" xlink:to="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_0D4C05B017AF0619F104AD7EA1525BF3" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="loc_us-gaap_StatementScenarioAxis_3D364AB526D843A06031AD9E1CADEEC6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_0D4C05B017AF0619F104AD7EA1525BF3" xlink:to="loc_us-gaap_StatementScenarioAxis_3D364AB526D843A06031AD9E1CADEEC6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="loc_us-gaap_ScenarioUnspecifiedDomain_310FDD85AAFB60B7CDA8AD9E1CAF9796_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementScenarioAxis_3D364AB526D843A06031AD9E1CADEEC6" xlink:to="loc_us-gaap_ScenarioUnspecifiedDomain_310FDD85AAFB60B7CDA8AD9E1CAF9796_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="loc_us-gaap_ScenarioUnspecifiedDomain_310FDD85AAFB60B7CDA8AD9E1CAF9796" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementScenarioAxis_3D364AB526D843A06031AD9E1CADEEC6" xlink:to="loc_us-gaap_ScenarioUnspecifiedDomain_310FDD85AAFB60B7CDA8AD9E1CAF9796" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioPreviouslyReportedMember" xlink:label="loc_us-gaap_ScenarioPreviouslyReportedMember_5F5BD4713E165A1F63B2AD9E84F7DE20" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScenarioUnspecifiedDomain_310FDD85AAFB60B7CDA8AD9E1CAF9796" xlink:to="loc_us-gaap_ScenarioPreviouslyReportedMember_5F5BD4713E165A1F63B2AD9E84F7DE20" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestatementAdjustmentMember" xlink:label="loc_us-gaap_RestatementAdjustmentMember_6848EA9E03F343519883AD9EA3D7AA90" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScenarioUnspecifiedDomain_310FDD85AAFB60B7CDA8AD9E1CAF9796" xlink:to="loc_us-gaap_RestatementAdjustmentMember_6848EA9E03F343519883AD9EA3D7AA90" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1E928F39FACB833E6AECAD9E46AB2D46" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_0D4C05B017AF0619F104AD7EA1525BF3" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1E928F39FACB833E6AECAD9E46AB2D46" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_02B08D335DA7BC444F07AD9E46B6687C_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1E928F39FACB833E6AECAD9E46AB2D46" xlink:to="loc_us-gaap_TypeOfAdoptionMember_02B08D335DA7BC444F07AD9E46B6687C_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_02B08D335DA7BC444F07AD9E46B6687C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1E928F39FACB833E6AECAD9E46AB2D46" xlink:to="loc_us-gaap_TypeOfAdoptionMember_02B08D335DA7BC444F07AD9E46B6687C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201409Member" xlink:label="loc_us-gaap_AccountingStandardsUpdate201409Member_786B14E8CEBCAE51164EAD9EC3F7EAE0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TypeOfAdoptionMember_02B08D335DA7BC444F07AD9E46B6687C" xlink:to="loc_us-gaap_AccountingStandardsUpdate201409Member_786B14E8CEBCAE51164EAD9EC3F7EAE0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_F032BB0E864B972104CCAD84BEF14DBF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_2C71D1D50B5573D0BC2EAD7EA1532D5B" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_F032BB0E864B972104CCAD84BEF14DBF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_86FF4B113DBB9051E7BFAD84EDFAD4DD" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_2C71D1D50B5573D0BC2EAD7EA1532D5B" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_86FF4B113DBB9051E7BFAD84EDFAD4DD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenueAndCreditsCurrent" xlink:label="loc_us-gaap_DeferredRevenueAndCreditsCurrent_93169409BC36B333A4DEAD8506E4CF41" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_2C71D1D50B5573D0BC2EAD7EA1532D5B" xlink:to="loc_us-gaap_DeferredRevenueAndCreditsCurrent_93169409BC36B333A4DEAD8506E4CF41" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_557CB393648C7DE18013AD852043F37D" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_2C71D1D50B5573D0BC2EAD7EA1532D5B" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_557CB393648C7DE18013AD852043F37D" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/RevenueRecognitionImpactOnStatementOfOperationsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716" xlink:to="loc_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716" xlink:to="loc_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201409Member" xlink:label="loc_us-gaap_AccountingStandardsUpdate201409Member_F256CBF9B4524CDA755EADA00CC6BC69" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F" xlink:to="loc_us-gaap_AccountingStandardsUpdate201409Member_F256CBF9B4524CDA755EADA00CC6BC69" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="loc_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:to="loc_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="loc_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142" xlink:to="loc_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="loc_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142" xlink:to="loc_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioPreviouslyReportedMember" xlink:label="loc_us-gaap_ScenarioPreviouslyReportedMember_0778A184D5CC27F9C38EADA008F18C58" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:to="loc_us-gaap_ScenarioPreviouslyReportedMember_0778A184D5CC27F9C38EADA008F18C58" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestatementAdjustmentMember" xlink:label="loc_us-gaap_RestatementAdjustmentMember_F0C580F8994D568DCECAADA00F42BCA5" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:to="loc_us-gaap_RestatementAdjustmentMember_F0C580F8994D568DCECAADA00F42BCA5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNet" xlink:label="loc_us-gaap_SalesRevenueNet_A12ED58AA460EEF9296FAD8393EA92C8" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_SalesRevenueNet_A12ED58AA460EEF9296FAD8393EA92C8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_DCF5681AA1BF1C61C34DAD83AA82D3B6" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_DCF5681AA1BF1C61C34DAD83AA82D3B6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_E899E3B92EE6138C6A3DAD83C6B24EF7" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_GrossProfit_E899E3B92EE6138C6A3DAD83C6B24EF7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_705F3CC4C83D4BC41002AD83F79DE55F" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_OperatingIncomeLoss_705F3CC4C83D4BC41002AD83F79DE55F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_9631D40E6974028DAD87AD841A6B3066" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_9631D40E6974028DAD87AD841A6B3066" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_E55045D5601924B8D567AD8435B2D95D" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_E55045D5601924B8D567AD8435B2D95D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_C4E5C23309CA032A2C89AD844CB54DBB" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_NetIncomeLoss_C4E5C23309CA032A2C89AD844CB54DBB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_350C61F300E0B215DA30AD846763F3E0" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_350C61F300E0B215DA30AD846763F3E0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_0729A0C8DA613DB46140AD84846447E0" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_EarningsPerShareDiluted_0729A0C8DA613DB46140AD84846447E0" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByGeographyDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementGeographicalAxis" xlink:label="loc_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1" xlink:to="loc_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11" xlink:to="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11" xlink:to="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EuropeMember" xlink:label="loc_us-gaap_EuropeMember_F904270EEDE0BCA48AE2AD978E3152EF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:to="loc_us-gaap_EuropeMember_F904270EEDE0BCA48AE2AD978E3152EF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AmericasMember" xlink:label="loc_us-gaap_AmericasMember_A0D09917BD103F6CBCEEAD97B537B9B4" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:to="loc_us-gaap_AmericasMember_A0D09917BD103F6CBCEEAD97B537B9B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_CN" xlink:label="loc_country_CN_BE08950344C90B49B82EAD97E3D72676" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:to="loc_country_CN_BE08950344C90B49B82EAD97E3D72676" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AsiaExcludingChinaMember" xlink:label="loc_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:to="loc_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60FF8D5434B76F66ABC0AD85DFC660B2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60FF8D5434B76F66ABC0AD85DFC660B2" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByProductsAndServicesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:label="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A" xlink:to="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductOrServiceAxis" xlink:label="loc_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40" xlink:to="loc_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductsAndServicesDomain" xlink:label="loc_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE" xlink:to="loc_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductsAndServicesDomain" xlink:label="loc_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE" xlink:to="loc_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_StandardProductsandServicesMember" xlink:label="loc_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:to="loc_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ApplicationSpecificCustomerSolutionsMember" xlink:label="loc_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:to="loc_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_3A6F4DF51F1BFAF0AF77AD867C50948F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_3A6F4DF51F1BFAF0AF77AD867C50948F" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/RevenueRecognitionTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpense" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:to="loc_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_2A327B49144136C97173A73B8D238343" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B" xlink:to="loc_us-gaap_EmployeeStockOptionMember_2A327B49144136C97173A73B8D238343" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:to="loc_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D" xlink:to="loc_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D" xlink:to="loc_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_GeneralStockOptionPlanMember" xlink:label="loc_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E" xlink:to="loc_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_86A2FD71D6CDA8B90A0EA73B8D25206B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_86A2FD71D6CDA8B90A0EA73B8D25206B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_A87C5C458E0213BA8A7EA73B8D25D898" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_A87C5C458E0213BA8A7EA73B8D25D898" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ExpirationPeriodOfStockOptionPlan" xlink:label="loc_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Vestingperiodperformancebasedrestrictedstockyears" xlink:label="loc_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Vestingperiodtimebasedrestrictedstockyears" xlink:label="loc_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_NumberOfGroupsWithinEmployeePopulation" xlink:label="loc_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:label="loc_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_DDB0E40A257A580A0DEFA73B8D2722CC" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_DDB0E40A257A580A0DEFA73B8D2722CC" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" xlink:label="loc_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_18648559060C8D08CD1AA73B8D27A429" xlink:type="locator" />
    <link:definitionArc order="13" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_18648559060C8D08CD1AA73B8D27A429" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" xlink:label="loc_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E" xlink:type="locator" />
    <link:definitionArc order="14" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_7D10247846487419138DA73B8D28B6A6" xlink:type="locator" />
    <link:definitionArc order="15" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_7D10247846487419138DA73B8D28B6A6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9A0659BA82F53C2130F5A73B8D28B40C" xlink:type="locator" />
    <link:definitionArc order="16" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9A0659BA82F53C2130F5A73B8D28B40C" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" xlink:label="loc_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1" xlink:type="locator" />
    <link:definitionArc order="17" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseNonvestedRestrictedStockSharesActivityDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_093BDA1F206484CAD97BA2DC9C0A0092" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C" xlink:to="loc_us-gaap_AwardTypeAxis_093BDA1F206484CAD97BA2DC9C0A0092" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_5ECF40460C5D3BF2E7D3A2DC9C0B1105_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_093BDA1F206484CAD97BA2DC9C0A0092" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_5ECF40460C5D3BF2E7D3A2DC9C0B1105_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_5ECF40460C5D3BF2E7D3A2DC9C0B1105" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_093BDA1F206484CAD97BA2DC9C0A0092" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_5ECF40460C5D3BF2E7D3A2DC9C0B1105" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="loc_us-gaap_RestrictedStockMember_3B36FE48AC58299B06C8A2DC9C0B9B58" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_5ECF40460C5D3BF2E7D3A2DC9C0B1105" xlink:to="loc_us-gaap_RestrictedStockMember_3B36FE48AC58299B06C8A2DC9C0B9B58" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3DA463343875B6EEE566A2DC9C0CD188" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3DA463343875B6EEE566A2DC9C0CD188" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_03FC66ACF1521F9D6B0FA2DC9C0C4242" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_03FC66ACF1521F9D6B0FA2DC9C0C4242" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_0E8F208756F0C938771BA2DC9C0CED47" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_0E8F208756F0C938771BA2DC9C0CED47" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_86F20B2CF79332D48E66A2DC9C0C30CA" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_86F20B2CF79332D48E66A2DC9C0C30CA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_AC7B2B1EEB15E68DB974A2DC9C0DA6BD" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_AC7B2B1EEB15E68DB974A2DC9C0DA6BD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_46675EA292C1AC86DD42A2DC9C0DE2AD" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_46675EA292C1AC86DD42A2DC9C0DE2AD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_99CD678C72716B594F87A2DC9C0D490F" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_99CD678C72716B594F87A2DC9C0D490F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_E01ED4184AA3324D3ECAA2DC9C0ED3DA" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_E01ED4184AA3324D3ECAA2DC9C0ED3DA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_FFBE01B26AE0C2FC88DAA2DC9C0EA237" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_FFBE01B26AE0C2FC88DAA2DC9C0EA237" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested_3F4E4BA7A994A13FF5D2A2DC9C0E45F9" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested_3F4E4BA7A994A13FF5D2A2DC9C0E45F9" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_BB2A028FAF575366A23166B67E126F83" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_4E3EC12E9AD75EF1A667BDA9BF13914D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_BB2A028FAF575366A23166B67E126F83" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_4E3EC12E9AD75EF1A667BDA9BF13914D" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_B672933465985683A459D682816F997A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_4E3EC12E9AD75EF1A667BDA9BF13914D" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_B672933465985683A459D682816F997A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_9A0E5BC672D94C78C02D94A1502EDD64_35335C8613DC5483A4977465BA3F6459" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_B672933465985683A459D682816F997A" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_9A0E5BC672D94C78C02D94A1502EDD64_35335C8613DC5483A4977465BA3F6459" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_42746FA4DADD53EE995D07055E081F9D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_B672933465985683A459D682816F997A" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_42746FA4DADD53EE995D07055E081F9D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CostOfGoodsTotalMember" xlink:label="loc_us-gaap_CostOfGoodsTotalMember_77859B10CB625A1D80CC9F9973D76273" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_42746FA4DADD53EE995D07055E081F9D" xlink:to="loc_us-gaap_CostOfGoodsTotalMember_77859B10CB625A1D80CC9F9973D76273" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_F956BED64FBC5E81949B10CE815AB9BC" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_42746FA4DADD53EE995D07055E081F9D" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_F956BED64FBC5E81949B10CE815AB9BC" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_SellingGeneralAndAdministrativeMember" xlink:label="loc_cgnx_SellingGeneralAndAdministrativeMember_D96969D4008D5B7A8EB9A1449732989D" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_42746FA4DADD53EE995D07055E081F9D" xlink:to="loc_cgnx_SellingGeneralAndAdministrativeMember_D96969D4008D5B7A8EB9A1449732989D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_E56878B6C483593599F90A9E8838C413" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_BB2A028FAF575366A23166B67E126F83" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_E56878B6C483593599F90A9E8838C413" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseSummaryOfStockOptionActivityDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedInEstimatingFairValuesOfStockOptionsGrantedDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockRepurchaseProgram" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockRepurchaseProgramDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="loc_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareRepurchaseProgramAxis" xlink:label="loc_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1" xlink:to="loc_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareRepurchaseProgramDomain" xlink:label="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2" xlink:to="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareRepurchaseProgramDomain" xlink:label="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2" xlink:to="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_RepurchaseProgramApril2017Member" xlink:label="loc_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:to="loc_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_RepurchaseProgramFebruary2018Member" xlink:label="loc_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:to="loc_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_RepurchaseProgramApril2017andFebruary2018Member" xlink:label="loc_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:to="loc_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_C415F4D783923D26B75EB1724E4F0D9F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_C415F4D783923D26B75EB1724E4F0D9F" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased" xlink:label="loc_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_StockRepurchaseProgramValue" xlink:label="loc_cgnx_StockRepurchaseProgramValue_3A991D75E61455B66235B1724E50CDB1" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_cgnx_StockRepurchaseProgramValue_3A991D75E61455B66235B1724E50CDB1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares_F88BD21FD71A21A17D2CB1724E503614" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodShares_F88BD21FD71A21A17D2CB1724E503614" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue_F6AFC0336EDE6DC905B4B1724E50FF29" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodValue_F6AFC0336EDE6DC905B4B1724E50FF29" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:label="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_F1BE60FFD53B2E696445B1724E512DD6" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_F1BE60FFD53B2E696445B1724E512DD6" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/SubsequentEvents" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/SubsequentEventsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventLineItems" xlink:label="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventTable" xlink:label="loc_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:to="loc_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaap_SubsequentEventMember_6DFE171DBA0CB366BB6BB16C14B29047" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F" xlink:to="loc_us-gaap_SubsequentEventMember_6DFE171DBA0CB366BB6BB16C14B29047" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Dividends" xlink:label="loc_us-gaap_Dividends_D61A87164417E71C1A88B16C14B4D801" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:to="loc_us-gaap_Dividends_D61A87164417E71C1A88B16C14B4D801" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DividendPayableDateToBePaidDayMonthAndYear" xlink:label="loc_us-gaap_DividendPayableDateToBePaidDayMonthAndYear_C0F6C92C78CFD08E5A62B16C14B54BEC" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:to="loc_us-gaap_DividendPayableDateToBePaidDayMonthAndYear_C0F6C92C78CFD08E5A62B16C14B54BEC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DividendsPayableDateOfRecordDayMonthAndYear" xlink:label="loc_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_74F2CD67363055CA7B6FB16C14B50A63" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:to="loc_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_74F2CD67363055CA7B6FB16C14B50A63" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_StockRepurchaseProgramValue" xlink:label="loc_cgnx_StockRepurchaseProgramValue_85EE1CA05334DBE46AB4B16D4C63F5F4" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:to="loc_cgnx_StockRepurchaseProgramValue_85EE1CA05334DBE46AB4B16D4C63F5F4" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/SummaryOfSignificantAccountingPolicies" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/Taxes" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/TaxesDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxContingencyLineItems" xlink:label="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxContingencyTable" xlink:label="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B04203E6D4107EE6AD93AD867116AE83" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B04203E6D4107EE6AD93AD867116AE83" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_07324768EA1565A542CDAD867116D016_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B04203E6D4107EE6AD93AD867116AE83" xlink:to="loc_us-gaap_TypeOfAdoptionMember_07324768EA1565A542CDAD867116D016_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_07324768EA1565A542CDAD867116D016" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B04203E6D4107EE6AD93AD867116AE83" xlink:to="loc_us-gaap_TypeOfAdoptionMember_07324768EA1565A542CDAD867116D016" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201616Member" xlink:label="loc_us-gaap_AccountingStandardsUpdate201616Member_E7AD08F60E65CCA9063FAD867116CCD6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TypeOfAdoptionMember_07324768EA1565A542CDAD867116D016" xlink:to="loc_us-gaap_AccountingStandardsUpdate201616Member_E7AD08F60E65CCA9063FAD867116CCD6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCountryMember" xlink:label="loc_us-gaap_ForeignCountryMember_0C90F88793E2297D652CAD8671164032" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:to="loc_us-gaap_ForeignCountryMember_0C90F88793E2297D652CAD8671164032" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DomesticCountryMember" xlink:label="loc_us-gaap_DomesticCountryMember_5B320C51C76206DF2714AD86711611FE" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:to="loc_us-gaap_DomesticCountryMember_5B320C51C76206DF2714AD86711611FE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:to="loc_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0" xlink:to="loc_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0" xlink:to="loc_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueCommissionersIrelandMember" xlink:label="loc_us-gaap_RevenueCommissionersIrelandMember_54522111F3DEAE08D7B6AD86711640CC" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:to="loc_us-gaap_RevenueCommissionersIrelandMember_54522111F3DEAE08D7B6AD86711640CC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StateAdministrationOfTaxationChinaMember" xlink:label="loc_us-gaap_StateAdministrationOfTaxationChinaMember_214E6F42FC1556243B75AD8671163680" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:to="loc_us-gaap_StateAdministrationOfTaxationChinaMember_214E6F42FC1556243B75AD8671163680" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_250B43BB33FA05B218FEAD8686F45FD6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_250B43BB33FA05B218FEAD8686F45FD6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_8454436C2053060E1DFFAD8671169C57" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_8454436C2053060E1DFFAD8671169C57" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_C53E7BFC9A7848E96AE1AD8671163F3E" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_C53E7BFC9A7848E96AE1AD8671163F3E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1" xlink:label="loc_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1_ED9338F877A98036993BAD867116AC69" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1_ED9338F877A98036993BAD867116AC69" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_9B39CBE1D0FDBB8A5B96AD867116FA94" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_9B39CBE1D0FDBB8A5B96AD867116FA94" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_6BE1A0214B8EBB49C580AD8689F17559" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_6BE1A0214B8EBB49C580AD8689F17559" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cognex.com/role/TaxesReconciliationOfUnitedStatesFederalStatutoryCorporateTaxRateToCompanysEffectiveTaxRateOrIncomeTaxProvisionDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/TaxesTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/WarrantyObligations" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/WarrantyObligationsChangesInWarrantyObligationsDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/WarrantyObligationsTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/WeightedAverageShares" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesCalculationOfWeightedAverageSharesDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesTables" xlink:type="extended" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>10
<FILENAME>cgnx-20180930_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!-- -->
<link:linkbase 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:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" xlink:type="simple" />
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_21E1C8F4AEB558823BCDA9F25CDD232B_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_248015340CD556DFBB4457BF4B9125AA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_248015340CD556DFBB4457BF4B9125AA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_248015340CD556DFBB4457BF4B9125AA" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_248015340CD556DFBB4457BF4B9125AA" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_6E7ED3AD08E981306320A9F25CDD38B0_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Table]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_6E7ED3AD08E981306320A9F25CDD38B0_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:type="arc" />
    <link:label id="lab_us-gaap_HedgingDesignationAxis_61D6BB22716566C7616FA9F25CDE1407_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingDesignationAxis_35D0EA8276A85245A00629C1C181EA3E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hedging Designation [Axis]</link:label>
    <link:label id="lab_us-gaap_HedgingDesignationAxis_61D6BB22716566C7616FA9F25CDE1407_label_en-US" xlink:label="lab_us-gaap_HedgingDesignationAxis_35D0EA8276A85245A00629C1C181EA3E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Hedging Designation [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_35D0EA8276A85245A00629C1C181EA3E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingDesignationAxis_35D0EA8276A85245A00629C1C181EA3E" xlink:to="lab_us-gaap_HedgingDesignationAxis_35D0EA8276A85245A00629C1C181EA3E" xlink:type="arc" />
    <link:label id="lab_us-gaap_HedgingDesignationDomain_78371F15E1BB07F692E6A9F25CDE2104_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hedging Designation [Domain]</link:label>
    <link:label id="lab_us-gaap_HedgingDesignationDomain_78371F15E1BB07F692E6A9F25CDE2104_label_en-US" xlink:label="lab_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Hedging Designation [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:to="lab_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:type="arc" />
    <link:label id="lab_us-gaap_DesignatedAsHedgingInstrumentMember_419BF46B47DB77A8256CA9F25CDEED48_terseLabel_en-US" xlink:label="lab_us-gaap_DesignatedAsHedgingInstrumentMember_11BD7CB215A0504F844D1962EE44EFDF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Designated as Hedging Instrument</link:label>
    <link:label id="lab_us-gaap_DesignatedAsHedgingInstrumentMember_419BF46B47DB77A8256CA9F25CDEED48_label_en-US" xlink:label="lab_us-gaap_DesignatedAsHedgingInstrumentMember_11BD7CB215A0504F844D1962EE44EFDF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Designated as Hedging Instrument [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_11BD7CB215A0504F844D1962EE44EFDF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DesignatedAsHedgingInstrumentMember_11BD7CB215A0504F844D1962EE44EFDF" xlink:to="lab_us-gaap_DesignatedAsHedgingInstrumentMember_11BD7CB215A0504F844D1962EE44EFDF" xlink:type="arc" />
    <link:label id="lab_us-gaap_NondesignatedMember_97BE4CCB7E6336FC9D42A9F25CDFAFD4_terseLabel_en-US" xlink:label="lab_us-gaap_NondesignatedMember_7C55823B11A954AFA59DFDC1CAFE618A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Not Designated as Hedging Instrument</link:label>
    <link:label id="lab_us-gaap_NondesignatedMember_97BE4CCB7E6336FC9D42A9F25CDFAFD4_label_en-US" xlink:label="lab_us-gaap_NondesignatedMember_7C55823B11A954AFA59DFDC1CAFE618A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Not Designated as Hedging Instrument [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="loc_us-gaap_NondesignatedMember_7C55823B11A954AFA59DFDC1CAFE618A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NondesignatedMember_7C55823B11A954AFA59DFDC1CAFE618A" xlink:to="lab_us-gaap_NondesignatedMember_7C55823B11A954AFA59DFDC1CAFE618A" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_890F9E11DBC7C4F215C3A9F25CDFC09B_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis_DB31ABF445DE59EF9FD91D93DD8ED3E4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_890F9E11DBC7C4F215C3A9F25CDFC09B_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis_DB31ABF445DE59EF9FD91D93DD8ED3E4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_DB31ABF445DE59EF9FD91D93DD8ED3E4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_DB31ABF445DE59EF9FD91D93DD8ED3E4" xlink:to="lab_us-gaap_IncomeStatementLocationAxis_DB31ABF445DE59EF9FD91D93DD8ED3E4" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_FA078DF786158A94AC49A9F25CDFC2E2_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_FA078DF786158A94AC49A9F25CDFC2E2_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:to="lab_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashFlowHedgingMember_71D763B64C5B8F9EABF5A9F25CDF929C_terseLabel_en-US" xlink:label="lab_us-gaap_CashFlowHedgingMember_2B2BEEA4C3535E4CA926CC1247382604" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:label id="lab_us-gaap_CashFlowHedgingMember_71D763B64C5B8F9EABF5A9F25CDF929C_label_en-US" xlink:label="lab_us-gaap_CashFlowHedgingMember_2B2BEEA4C3535E4CA926CC1247382604" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Flow Hedging [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashFlowHedgingMember" xlink:label="loc_us-gaap_CashFlowHedgingMember_2B2BEEA4C3535E4CA926CC1247382604" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashFlowHedgingMember_2B2BEEA4C3535E4CA926CC1247382604" xlink:to="lab_us-gaap_CashFlowHedgingMember_2B2BEEA4C3535E4CA926CC1247382604" xlink:type="arc" />
    <link:label id="lab_us-gaap_SalesRevenueGoodsNetMember_EF4E2451D3F363F95F71A9F25CDF1447_terseLabel_en-US" xlink:label="lab_us-gaap_SalesRevenueGoodsNetMember_5E3DE8D99E60518A9099E536464C98FC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Product Revenue</link:label>
    <link:label id="lab_us-gaap_SalesRevenueGoodsNetMember_EF4E2451D3F363F95F71A9F25CDF1447_label_en-US" xlink:label="lab_us-gaap_SalesRevenueGoodsNetMember_5E3DE8D99E60518A9099E536464C98FC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sales Revenue, Goods, Net [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueGoodsNetMember" xlink:label="loc_us-gaap_SalesRevenueGoodsNetMember_5E3DE8D99E60518A9099E536464C98FC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SalesRevenueGoodsNetMember_5E3DE8D99E60518A9099E536464C98FC" xlink:to="lab_us-gaap_SalesRevenueGoodsNetMember_5E3DE8D99E60518A9099E536464C98FC" xlink:type="arc" />
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseMember_2868C8F36877596E08A7A9F25CE032BF_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember_9FAF6588A7E65897B82C4722C62C3DCB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Research, Development, and Engineering Expenses</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseMember_2868C8F36877596E08A7A9F25CE032BF_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember_9FAF6588A7E65897B82C4722C62C3DCB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Research and Development Expense [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_9FAF6588A7E65897B82C4722C62C3DCB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpenseMember_9FAF6588A7E65897B82C4722C62C3DCB" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpenseMember_9FAF6588A7E65897B82C4722C62C3DCB" xlink:type="arc" />
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpenseMember_0DCC4DDF477A565ABC59A9F25CE0C4D3_terseLabel_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpenseMember_735F44E8450155299EECBB466D378615" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Selling, General, and Administrative Expenses</link:label>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpenseMember_0DCC4DDF477A565ABC59A9F25CE0C4D3_label_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpenseMember_735F44E8450155299EECBB466D378615" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">General and Administrative Expense [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_735F44E8450155299EECBB466D378615" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeneralAndAdministrativeExpenseMember_735F44E8450155299EECBB466D378615" xlink:to="lab_us-gaap_GeneralAndAdministrativeExpenseMember_735F44E8450155299EECBB466D378615" xlink:type="arc" />
    <link:label id="lab_us-gaap_ForeignCurrencyGainLossMember_16BF606423BA9911610DA9F25CE00F1B_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyGainLossMember_4116E869B46455F98130ACCBDFECBB8C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign Currency Gain (Loss)</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyGainLossMember_16BF606423BA9911610DA9F25CE00F1B_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyGainLossMember_4116E869B46455F98130ACCBDFECBB8C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Currency Gain (Loss) [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCurrencyGainLossMember" xlink:label="loc_us-gaap_ForeignCurrencyGainLossMember_4116E869B46455F98130ACCBDFECBB8C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyGainLossMember_4116E869B46455F98130ACCBDFECBB8C" xlink:to="lab_us-gaap_ForeignCurrencyGainLossMember_4116E869B46455F98130ACCBDFECBB8C" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_3445383BDF6221A23CFFA9F25CE0748E_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Line Items]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_3445383BDF6221A23CFFA9F25CE0748E_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet_835651DE86347C4A78C0A9F25CE07E48_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet_659F1CC045FA5BA9BE536F5E540D9474" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gains (losses) recorded in shareholders' equity (effective portion)</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet_835651DE86347C4A78C0A9F25CE07E48_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet_659F1CC045FA5BA9BE536F5E540D9474" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) Recognized in Other Comprehensive Income (Loss), Effective Portion, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet_659F1CC045FA5BA9BE536F5E540D9474" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet_659F1CC045FA5BA9BE536F5E540D9474" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet_659F1CC045FA5BA9BE536F5E540D9474" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_A3DE09D2EEDB48B79ABFA9F25CE01784_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_CCD1910F5C505D4DBE629A914A8390A0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations (effective portion)</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_A3DE09D2EEDB48B79ABFA9F25CE01784_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_CCD1910F5C505D4DBE629A914A8390A0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) Reclassified from Accumulated OCI into Income, Effective Portion, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_CCD1910F5C505D4DBE629A914A8390A0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_CCD1910F5C505D4DBE629A914A8390A0" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_CCD1910F5C505D4DBE629A914A8390A0" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_35A01ACC1932F0DC7AC7A9F25CE144A4_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_4D037D12D37A586F9F7F7937405185A6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_35A01ACC1932F0DC7AC7A9F25CE144A4_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_4D037D12D37A586F9F7F7937405185A6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Reclassification Adjustment from AOCI on Derivatives, Net of Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_4D037D12D37A586F9F7F7937405185A6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_4D037D12D37A586F9F7F7937405185A6" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_4D037D12D37A586F9F7F7937405185A6" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_E022F279FB1FE2451DD7AA24CC986A2A_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_06C84226DDF9579A90801B45D935CD38" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) Recognized in Income, Ineffective Portion and Amount Excluded from Effectiveness Testing, Net</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_E022F279FB1FE2451DD7AA24CC986A2A_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_06C84226DDF9579A90801B45D935CD38" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) Recognized in Income, Ineffective Portion and Amount Excluded from Effectiveness Testing, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_06C84226DDF9579A90801B45D935CD38" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_06C84226DDF9579A90801B45D935CD38" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_06C84226DDF9579A90801B45D935CD38" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeGainLossOnDerivativeNet_318833750F4F071D9C07A9F25CE1BEBF_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeGainLossOnDerivativeNet_0B89F2B1ECB45E008A9248B752806252" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gains (losses) recognized in current operations</link:label>
    <link:label id="lab_us-gaap_DerivativeGainLossOnDerivativeNet_318833750F4F071D9C07A9F25CE1BEBF_label_en-US" xlink:label="lab_us-gaap_DerivativeGainLossOnDerivativeNet_0B89F2B1ECB45E008A9248B752806252" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative, Gain (Loss) on Derivative, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeGainLossOnDerivativeNet" xlink:label="loc_us-gaap_DerivativeGainLossOnDerivativeNet_0B89F2B1ECB45E008A9248B752806252" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeGainLossOnDerivativeNet_0B89F2B1ECB45E008A9248B752806252" xlink:to="lab_us-gaap_DerivativeGainLossOnDerivativeNet_0B89F2B1ECB45E008A9248B752806252" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_1F5CC614748AE69A8FE494A150AFC02D_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract_F530C2E872E35EB7A2A1FD506A7D4919" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_F530C2E872E35EB7A2A1FD506A7D4919" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_F530C2E872E35EB7A2A1FD506A7D4919" xlink:to="lab_us-gaap_InventoryDisclosureAbstract_F530C2E872E35EB7A2A1FD506A7D4919" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryRawMaterialsNetOfReserves_E4C80277505F7FC22F1294A150B05F88_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves_40C16DD30A3B5BEB8815A75CE4728B9B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Raw materials</link:label>
    <link:label id="lab_us-gaap_InventoryRawMaterialsNetOfReserves_E4C80277505F7FC22F1294A150B05F88_label_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves_40C16DD30A3B5BEB8815A75CE4728B9B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Raw Materials, Net of Reserves</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_40C16DD30A3B5BEB8815A75CE4728B9B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryRawMaterialsNetOfReserves_40C16DD30A3B5BEB8815A75CE4728B9B" xlink:to="lab_us-gaap_InventoryRawMaterialsNetOfReserves_40C16DD30A3B5BEB8815A75CE4728B9B" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryWorkInProcessNetOfReserves_D6D1BD726EEBB4C2A63F94A150B02A6A_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcessNetOfReserves_F980C5D2BCBC5CA996C0A30DDD5229E4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Work-in-process</link:label>
    <link:label id="lab_us-gaap_InventoryWorkInProcessNetOfReserves_D6D1BD726EEBB4C2A63F94A150B02A6A_label_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcessNetOfReserves_F980C5D2BCBC5CA996C0A30DDD5229E4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Work in Process, Net of Reserves</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_F980C5D2BCBC5CA996C0A30DDD5229E4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryWorkInProcessNetOfReserves_F980C5D2BCBC5CA996C0A30DDD5229E4" xlink:to="lab_us-gaap_InventoryWorkInProcessNetOfReserves_F980C5D2BCBC5CA996C0A30DDD5229E4" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_E984CBEAFA6568483AE894A150B0EE7F_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_3CE1E43F0075515F9E73666E5D2E09EA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finished goods</link:label>
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_E984CBEAFA6568483AE894A150B0EE7F_label_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_3CE1E43F0075515F9E73666E5D2E09EA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Finished Goods, Net of Reserves</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_3CE1E43F0075515F9E73666E5D2E09EA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_3CE1E43F0075515F9E73666E5D2E09EA" xlink:to="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_3CE1E43F0075515F9E73666E5D2E09EA" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryNet_CCBCBE2BFE28A56B8EEC94A150B02EB3_totalLabel_en-US" xlink:label="lab_us-gaap_InventoryNet_A4EFA991B960553EB4E3623AE08005B9" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryNet_CCBCBE2BFE28A56B8EEC94A150B02EB3_label_en-US" xlink:label="lab_us-gaap_InventoryNet_A4EFA991B960553EB4E3623AE08005B9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_A4EFA991B960553EB4E3623AE08005B9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet_A4EFA991B960553EB4E3623AE08005B9" xlink:to="lab_us-gaap_InventoryNet_A4EFA991B960553EB4E3623AE08005B9" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_605F187365313BD665EEAD7FD6117F53_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract_605F187365313BD665EEAD7FD6117F53" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_605F187365313BD665EEAD7FD6117F53" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_605F187365313BD665EEAD7FD6117F53" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerAbstract_605F187365313BD665EEAD7FD6117F53" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1" xlink:to="lab_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11_terseLabel_en-US" xlink:label="lab_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11_label_en-US" xlink:label="lab_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementGeographicalAxis" xlink:label="loc_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11" xlink:to="lab_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11" xlink:type="arc" />
    <link:label id="lab_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:label id="lab_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59_label_en-US" xlink:label="lab_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:to="lab_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:type="arc" />
    <link:label id="lab_us-gaap_EuropeMember_F904270EEDE0BCA48AE2AD978E3152EF_terseLabel_en-US" xlink:label="lab_us-gaap_EuropeMember_F904270EEDE0BCA48AE2AD978E3152EF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Europe</link:label>
    <link:label id="lab_us-gaap_EuropeMember_F904270EEDE0BCA48AE2AD978E3152EF_label_en-US" xlink:label="lab_us-gaap_EuropeMember_F904270EEDE0BCA48AE2AD978E3152EF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Europe [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EuropeMember" xlink:label="loc_us-gaap_EuropeMember_F904270EEDE0BCA48AE2AD978E3152EF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EuropeMember_F904270EEDE0BCA48AE2AD978E3152EF" xlink:to="lab_us-gaap_EuropeMember_F904270EEDE0BCA48AE2AD978E3152EF" xlink:type="arc" />
    <link:label id="lab_us-gaap_AmericasMember_A0D09917BD103F6CBCEEAD97B537B9B4_terseLabel_en-US" xlink:label="lab_us-gaap_AmericasMember_A0D09917BD103F6CBCEEAD97B537B9B4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Americas</link:label>
    <link:label id="lab_us-gaap_AmericasMember_A0D09917BD103F6CBCEEAD97B537B9B4_label_en-US" xlink:label="lab_us-gaap_AmericasMember_A0D09917BD103F6CBCEEAD97B537B9B4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Americas [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AmericasMember" xlink:label="loc_us-gaap_AmericasMember_A0D09917BD103F6CBCEEAD97B537B9B4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmericasMember_A0D09917BD103F6CBCEEAD97B537B9B4" xlink:to="lab_us-gaap_AmericasMember_A0D09917BD103F6CBCEEAD97B537B9B4" xlink:type="arc" />
    <link:label id="lab_country_CN_BE08950344C90B49B82EAD97E3D72676_terseLabel_en-US" xlink:label="lab_country_CN_BE08950344C90B49B82EAD97E3D72676" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Greater China</link:label>
    <link:label id="lab_country_CN_BE08950344C90B49B82EAD97E3D72676_label_en-US" xlink:label="lab_country_CN_BE08950344C90B49B82EAD97E3D72676" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">CHINA</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_CN" xlink:label="loc_country_CN_BE08950344C90B49B82EAD97E3D72676" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_CN_BE08950344C90B49B82EAD97E3D72676" xlink:to="lab_country_CN_BE08950344C90B49B82EAD97E3D72676" xlink:type="arc" />
    <link:label id="lab_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3_terseLabel_en-US" xlink:label="lab_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other Asia</link:label>
    <link:label id="lab_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3_label_en-US" xlink:label="lab_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Asia, Excluding China [Member]</link:label>
    <link:label id="lab_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3_documentation_en-US" xlink:label="lab_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Asia, Excluding China [Member]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AsiaExcludingChinaMember" xlink:label="loc_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3" xlink:to="lab_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5" xlink:to="lab_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60FF8D5434B76F66ABC0AD85DFC660B2_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60FF8D5434B76F66ABC0AD85DFC660B2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60FF8D5434B76F66ABC0AD85DFC660B2_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60FF8D5434B76F66ABC0AD85DFC660B2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60FF8D5434B76F66ABC0AD85DFC660B2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60FF8D5434B76F66ABC0AD85DFC660B2" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60FF8D5434B76F66ABC0AD85DFC660B2" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProductWarrantiesDisclosuresAbstract_27C7A7DB11685E4DEA2894A14F83A274_label_en-US" xlink:label="lab_us-gaap_ProductWarrantiesDisclosuresAbstract_2A6BA0AF7E6D5F6E84506CAB7AADBF5F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product Warranties Disclosures [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_2A6BA0AF7E6D5F6E84506CAB7AADBF5F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_2A6BA0AF7E6D5F6E84506CAB7AADBF5F" xlink:to="lab_us-gaap_ProductWarrantiesDisclosuresAbstract_2A6BA0AF7E6D5F6E84506CAB7AADBF5F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_8F9FC89E8B60CAF10AB294A14F848DA0_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_9025343193BC52DF98B54A0B773FC1B3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Changes in Warranty Obligations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_8F9FC89E8B60CAF10AB294A14F848DA0_label_en-US" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_9025343193BC52DF98B54A0B773FC1B3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Product Warranty Liability [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_9025343193BC52DF98B54A0B773FC1B3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_9025343193BC52DF98B54A0B773FC1B3" xlink:to="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_9025343193BC52DF98B54A0B773FC1B3" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_7E6DBC2865BE9EDB236D94A150240280_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract_BA25FF214133557CB1898432FA2D7CA7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_BA25FF214133557CB1898432FA2D7CA7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract_BA25FF214133557CB1898432FA2D7CA7" xlink:to="lab_us-gaap_EarningsPerShareAbstract_BA25FF214133557CB1898432FA2D7CA7" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_DC51E59EA32A21436F7B94A150247471_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_8BC969DE3B8A5E4DA9E311E3390410AE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Calculation of Weighted-Average Shares</link:label>
    <link:label id="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_DC51E59EA32A21436F7B94A150247471_label_en-US" xlink:label="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_8BC969DE3B8A5E4DA9E311E3390410AE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Weighted Average Number of Shares [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_8BC969DE3B8A5E4DA9E311E3390410AE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_8BC969DE3B8A5E4DA9E311E3390410AE" xlink:to="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_8BC969DE3B8A5E4DA9E311E3390410AE" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_8B8ADC23441CEDE36A1194A1502124D0_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_5BE962A05E5E5637B80594065F0E5CBD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_8B8ADC23441CEDE36A1194A1502124D0_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_5BE962A05E5E5637B80594065F0E5CBD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_5BE962A05E5E5637B80594065F0E5CBD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_5BE962A05E5E5637B80594065F0E5CBD" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_5BE962A05E5E5637B80594065F0E5CBD" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_17E254EA0E12532AFEF2B895CE2899CA_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_F4E5157679B95B189DA456B2BB4E15BD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_F4E5157679B95B189DA456B2BB4E15BD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_F4E5157679B95B189DA456B2BB4E15BD" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_F4E5157679B95B189DA456B2BB4E15BD" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_A4F8E9C52ED5FC6D826AB895CE2885CB_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_960D8033307957799614AD2BF7F74843" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Intangible Assets</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_A4F8E9C52ED5FC6D826AB895CE2885CB_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_960D8033307957799614AD2BF7F74843" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_960D8033307957799614AD2BF7F74843" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_960D8033307957799614AD2BF7F74843" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_960D8033307957799614AD2BF7F74843" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_3E12F6DD2A7FB299242FB895CE294D8B_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_0E41A83D8EE4596599BED259FAC0A1F0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Intangible Assets, Future Amortization Expense</link:label>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_3E12F6DD2A7FB299242FB895CE294D8B_label_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_0E41A83D8EE4596599BED259FAC0A1F0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_0E41A83D8EE4596599BED259FAC0A1F0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_0E41A83D8EE4596599BED259FAC0A1F0" xlink:to="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_0E41A83D8EE4596599BED259FAC0A1F0" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_44E6E9CA43C3787EE2B194A150BA1B50_label_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_BCBCA31B52CD56B2B251BDFAEEEF0707" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_BCBCA31B52CD56B2B251BDFAEEEF0707" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_BCBCA31B52CD56B2B251BDFAEEEF0707" xlink:to="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_BCBCA31B52CD56B2B251BDFAEEEF0707" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax_19369CEF9769DD8760F794A150BA9736_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax_0DFA3E38663A5350B96BD11B6ECBA702" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax effect on cash flow hedges</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax_19369CEF9769DD8760F794A150BA9736_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax_0DFA3E38663A5350B96BD11B6ECBA702" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Derivatives Qualifying as Hedges, Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax_0DFA3E38663A5350B96BD11B6ECBA702" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax_0DFA3E38663A5350B96BD11B6ECBA702" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax_0DFA3E38663A5350B96BD11B6ECBA702" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_6BB26D35DBFB4AA6265194A150BAE715_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_4ABFCA2CAC8C5B2BAC8D6E69A81C1DC7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax effect of unrealized gain (loss) on available-for-sale investments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_6BB26D35DBFB4AA6265194A150BAE715_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_4ABFCA2CAC8C5B2BAC8D6E69A81C1DC7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Unrealized Holding Gain (Loss) on Securities Arising During Period, Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_4ABFCA2CAC8C5B2BAC8D6E69A81C1DC7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_4ABFCA2CAC8C5B2BAC8D6E69A81C1DC7" xlink:to="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_4ABFCA2CAC8C5B2BAC8D6E69A81C1DC7" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_7C004BABF38F620BF2FC94A150BAB7A7_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_922F12B37C445635A320DC8CA87F793A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax effect of foreign currency translation adjustment</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_7C004BABF38F620BF2FC94A150BAB7A7_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_922F12B37C445635A320DC8CA87F793A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Foreign Currency Translation Gain (Loss) Arising During Period, Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_922F12B37C445635A320DC8CA87F793A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_922F12B37C445635A320DC8CA87F793A" xlink:to="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_922F12B37C445635A320DC8CA87F793A" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAbstract_852AE5C897EA50F214D0A6E2966C5A48_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAbstract_852AE5C897EA50F214D0A6E2966C5A48" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_852AE5C897EA50F214D0A6E2966C5A48" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_852AE5C897EA50F214D0A6E2966C5A48" xlink:to="lab_us-gaap_CashAndCashEquivalentsAbstract_852AE5C897EA50F214D0A6E2966C5A48" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Available-for-sale Securities [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Available-for-sale Securities [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesTable" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0" xlink:to="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0" xlink:type="arc" />
    <link:label id="lab_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71_terseLabel_en-US" xlink:label="lab_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Major Types of Debt and Equity Securities [Axis]</link:label>
    <link:label id="lab_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71_label_en-US" xlink:label="lab_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Major Types of Debt and Equity Securities [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71" xlink:to="lab_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71" xlink:type="arc" />
    <link:label id="lab_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A_terseLabel_en-US" xlink:label="lab_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Major Types of Debt and Equity Securities [Domain]</link:label>
    <link:label id="lab_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A_label_en-US" xlink:label="lab_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Major Types of Debt and Equity Securities [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="lab_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:type="arc" />
    <link:label id="lab_us-gaap_CorporateBondSecuritiesMember_86753CECC7B72B575117A6E2966D1B8C_terseLabel_en-US" xlink:label="lab_us-gaap_CorporateBondSecuritiesMember_86753CECC7B72B575117A6E2966D1B8C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Corporate Bonds</link:label>
    <link:label id="lab_us-gaap_CorporateBondSecuritiesMember_86753CECC7B72B575117A6E2966D1B8C_label_en-US" xlink:label="lab_us-gaap_CorporateBondSecuritiesMember_86753CECC7B72B575117A6E2966D1B8C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Corporate Bond Securities [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CorporateBondSecuritiesMember" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_86753CECC7B72B575117A6E2966D1B8C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CorporateBondSecuritiesMember_86753CECC7B72B575117A6E2966D1B8C" xlink:to="lab_us-gaap_CorporateBondSecuritiesMember_86753CECC7B72B575117A6E2966D1B8C" xlink:type="arc" />
    <link:label id="lab_us-gaap_USTreasurySecuritiesMember_1A92125F3A05EAE7EEAFA6E2966EB25C_terseLabel_en-US" xlink:label="lab_us-gaap_USTreasurySecuritiesMember_1A92125F3A05EAE7EEAFA6E2966EB25C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Treasury Bills</link:label>
    <link:label id="lab_us-gaap_USTreasurySecuritiesMember_1A92125F3A05EAE7EEAFA6E2966EB25C_label_en-US" xlink:label="lab_us-gaap_USTreasurySecuritiesMember_1A92125F3A05EAE7EEAFA6E2966EB25C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">US Treasury Securities [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_1A92125F3A05EAE7EEAFA6E2966EB25C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_USTreasurySecuritiesMember_1A92125F3A05EAE7EEAFA6E2966EB25C" xlink:to="lab_us-gaap_USTreasurySecuritiesMember_1A92125F3A05EAE7EEAFA6E2966EB25C" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetBackedSecuritiesMember_737AEA3C7E7CDCDBCCA5A6E2966EA9FE_terseLabel_en-US" xlink:label="lab_us-gaap_AssetBackedSecuritiesMember_737AEA3C7E7CDCDBCCA5A6E2966EA9FE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Asset-Backed Securities</link:label>
    <link:label id="lab_us-gaap_AssetBackedSecuritiesMember_737AEA3C7E7CDCDBCCA5A6E2966EA9FE_label_en-US" xlink:label="lab_us-gaap_AssetBackedSecuritiesMember_737AEA3C7E7CDCDBCCA5A6E2966EA9FE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Asset-backed Securities [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetBackedSecuritiesMember" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_737AEA3C7E7CDCDBCCA5A6E2966EA9FE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetBackedSecuritiesMember_737AEA3C7E7CDCDBCCA5A6E2966EA9FE" xlink:to="lab_us-gaap_AssetBackedSecuritiesMember_737AEA3C7E7CDCDBCCA5A6E2966EA9FE" xlink:type="arc" />
    <link:label id="lab_us-gaap_SovereignDebtSecuritiesMember_E09319DC48846DFBC4E7A6E2966E342F_terseLabel_en-US" xlink:label="lab_us-gaap_SovereignDebtSecuritiesMember_E09319DC48846DFBC4E7A6E2966E342F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sovereign Bonds</link:label>
    <link:label id="lab_us-gaap_SovereignDebtSecuritiesMember_E09319DC48846DFBC4E7A6E2966E342F_label_en-US" xlink:label="lab_us-gaap_SovereignDebtSecuritiesMember_E09319DC48846DFBC4E7A6E2966E342F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sovereign Debt Securities [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtSecuritiesMember" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_E09319DC48846DFBC4E7A6E2966E342F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SovereignDebtSecuritiesMember_E09319DC48846DFBC4E7A6E2966E342F" xlink:to="lab_us-gaap_SovereignDebtSecuritiesMember_E09319DC48846DFBC4E7A6E2966E342F" xlink:type="arc" />
    <link:label id="lab_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A_terseLabel_en-US" xlink:label="lab_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Agency Bonds</link:label>
    <link:label id="lab_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A_label_en-US" xlink:label="lab_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Agency Bonds [Member]</link:label>
    <link:label id="lab_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A_documentation_en-US" xlink:label="lab_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Agency bond.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AgencyBondsMember" xlink:label="loc_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A" xlink:to="lab_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A" xlink:type="arc" />
    <link:label id="lab_us-gaap_MunicipalBondsMember_593D0A479B5EF693CA31A6E2966ED5C9_terseLabel_en-US" xlink:label="lab_us-gaap_MunicipalBondsMember_593D0A479B5EF693CA31A6E2966ED5C9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Municipal Bonds</link:label>
    <link:label id="lab_us-gaap_MunicipalBondsMember_593D0A479B5EF693CA31A6E2966ED5C9_label_en-US" xlink:label="lab_us-gaap_MunicipalBondsMember_593D0A479B5EF693CA31A6E2966ED5C9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Municipal Bonds [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MunicipalBondsMember" xlink:label="loc_us-gaap_MunicipalBondsMember_593D0A479B5EF693CA31A6E2966ED5C9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MunicipalBondsMember_593D0A479B5EF693CA31A6E2966ED5C9" xlink:to="lab_us-gaap_MunicipalBondsMember_593D0A479B5EF693CA31A6E2966ED5C9" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Available-for-sale Securities [Line Items]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Available-for-sale Securities [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_6F29441AEB401A5911D5A6E2966FAFA5_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_6F29441AEB401A5911D5A6E2966FAFA5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">1 year or less</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_6F29441AEB401A5911D5A6E2966FAFA5_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_6F29441AEB401A5911D5A6E2966FAFA5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Debt Maturities, Next Twelve Months, Fair Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_6F29441AEB401A5911D5A6E2966FAFA5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_6F29441AEB401A5911D5A6E2966FAFA5" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_6F29441AEB401A5911D5A6E2966FAFA5" xlink:type="arc" />
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009_terseLabel_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">1-2 years</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009_label_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available For Sale Securities Debt Maturities After One Year Before Two Years Fair Value</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009_documentation_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">This item represents the fair value of debt securities which are expected to mature within one year of the balance sheet date and which are categorized neither as held-to-maturity nor trading securities.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009" xlink:to="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009" xlink:type="arc" />
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82_terseLabel_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2-3 years</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82_label_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available For Sale Securities Debt Maturities After Two Years Before Three Years Fair Value</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82_documentation_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Available-for-sale securities, debt maturities after second year but before third year, fair value.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82" xlink:to="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82" xlink:type="arc" />
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC_terseLabel_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">3-4 years</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC_label_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available For Sale Securities Debt Maturities After Three Years Before Four Years Fair Value</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC_documentation_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Available-for-sale securities, debt maturities after third year but before fourth year, fair value.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC" xlink:to="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC" xlink:type="arc" />
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7_terseLabel_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">4-5 years</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7_label_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available For Sale Securities Debt Maturities After Four Years Before Five Years Fair Value</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7_documentation_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Available-for-sale securities, debt maturities after fourth year but before fifth year, fair value.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7" xlink:to="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7" xlink:type="arc" />
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C_terseLabel_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">5-7 years</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C_label_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available For Sale Securities Debt Maturities After Five Years Before Seven Years Fair Value</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C_documentation_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Available For Sale Securities Debt Maturities After Five Years Before Seven Years Fair Value</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C" xlink:to="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities_C400FC229053A7A928CAA6E29670C8CE_totalLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities_C400FC229053A7A928CAA6E29670C8CE" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Fair value</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities_C400FC229053A7A928CAA6E29670C8CE_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities_C400FC229053A7A928CAA6E29670C8CE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Debt Securities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_C400FC229053A7A928CAA6E29670C8CE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_C400FC229053A7A928CAA6E29670C8CE" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities_C400FC229053A7A928CAA6E29670C8CE" xlink:type="arc" />
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_6412372AF83970BD012994A14EE2A312_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_6C1D4D3BE96552FBA1A67A723DDD69CD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock options to purchase anti-dilutive common stock</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_6412372AF83970BD012994A14EE2A312_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_6C1D4D3BE96552FBA1A67A723DDD69CD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_6C1D4D3BE96552FBA1A67A723DDD69CD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_6C1D4D3BE96552FBA1A67A723DDD69CD" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_6C1D4D3BE96552FBA1A67A723DDD69CD" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE_label_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="lab_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:type="arc" />
    <link:label id="lab_us-gaap_SalesRevenueNet_4169F170865A27DF181DA6E297186AB8_terseLabel_en-US" xlink:label="lab_us-gaap_SalesRevenueNet_4169F170865A27DF181DA6E297186AB8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_SalesRevenueNet_4169F170865A27DF181DA6E297186AB8_label_en-US" xlink:label="lab_us-gaap_SalesRevenueNet_4169F170865A27DF181DA6E297186AB8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNet" xlink:label="loc_us-gaap_SalesRevenueNet_4169F170865A27DF181DA6E297186AB8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SalesRevenueNet_4169F170865A27DF181DA6E297186AB8" xlink:to="lab_us-gaap_SalesRevenueNet_4169F170865A27DF181DA6E297186AB8" xlink:type="arc" />
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_A12B14F93FDD3AD5699FA6E29719ED03_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold_A12B14F93FDD3AD5699FA6E29719ED03" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of revenue</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_A12B14F93FDD3AD5699FA6E29719ED03_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold_A12B14F93FDD3AD5699FA6E29719ED03" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of Goods and Services Sold</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_A12B14F93FDD3AD5699FA6E29719ED03" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold_A12B14F93FDD3AD5699FA6E29719ED03" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold_A12B14F93FDD3AD5699FA6E29719ED03" xlink:type="arc" />
    <link:label id="lab_us-gaap_GrossProfit_D4A489576CE2640B47B1A6E297199DF8_totalLabel_en-US" xlink:label="lab_us-gaap_GrossProfit_D4A489576CE2640B47B1A6E297199DF8" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Gross margin</link:label>
    <link:label id="lab_us-gaap_GrossProfit_D4A489576CE2640B47B1A6E297199DF8_label_en-US" xlink:label="lab_us-gaap_GrossProfit_D4A489576CE2640B47B1A6E297199DF8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gross Profit</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_D4A489576CE2640B47B1A6E297199DF8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit_D4A489576CE2640B47B1A6E297199DF8" xlink:to="lab_us-gaap_GrossProfit_D4A489576CE2640B47B1A6E297199DF8" xlink:type="arc" />
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_31696A4EC50D09B34692A6E297197968_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense_31696A4EC50D09B34692A6E297197968" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Research, development, and engineering expenses</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_31696A4EC50D09B34692A6E297197968_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense_31696A4EC50D09B34692A6E297197968" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Research and Development Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_31696A4EC50D09B34692A6E297197968" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpense_31696A4EC50D09B34692A6E297197968" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpense_31696A4EC50D09B34692A6E297197968" xlink:type="arc" />
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_9F721529F59F9DF99559A6E297192FEC_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense_9F721529F59F9DF99559A6E297192FEC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Selling, general, and administrative expenses</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_9F721529F59F9DF99559A6E297192FEC_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense_9F721529F59F9DF99559A6E297192FEC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling, General and Administrative Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_9F721529F59F9DF99559A6E297192FEC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpense_9F721529F59F9DF99559A6E297192FEC" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpense_9F721529F59F9DF99559A6E297192FEC" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingIncomeLoss_D9155F1679D62D87C946A6E297195BE0_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss_D9155F1679D62D87C946A6E297195BE0" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Operating income</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_D9155F1679D62D87C946A6E297195BE0_label_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss_D9155F1679D62D87C946A6E297195BE0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Income (Loss)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_D9155F1679D62D87C946A6E297195BE0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss_D9155F1679D62D87C946A6E297195BE0" xlink:to="lab_us-gaap_OperatingIncomeLoss_D9155F1679D62D87C946A6E297195BE0" xlink:type="arc" />
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_FB9F89C0C8AF3AE347E3A6E297195A4C_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_FB9F89C0C8AF3AE347E3A6E297195A4C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency gain (loss)</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_FB9F89C0C8AF3AE347E3A6E297195A4C_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_FB9F89C0C8AF3AE347E3A6E297195A4C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Currency Transaction Gain (Loss), before Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_FB9F89C0C8AF3AE347E3A6E297195A4C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_FB9F89C0C8AF3AE347E3A6E297195A4C" xlink:to="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_FB9F89C0C8AF3AE347E3A6E297195A4C" xlink:type="arc" />
    <link:label id="lab_us-gaap_InvestmentIncomeNonoperating_97A2FE33EB7C4745F765A6E2971A65B0_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentIncomeNonoperating_97A2FE33EB7C4745F765A6E2971A65B0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment income</link:label>
    <link:label id="lab_us-gaap_InvestmentIncomeNonoperating_97A2FE33EB7C4745F765A6E2971A65B0_label_en-US" xlink:label="lab_us-gaap_InvestmentIncomeNonoperating_97A2FE33EB7C4745F765A6E2971A65B0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment Income, Nonoperating</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentIncomeNonoperating" xlink:label="loc_us-gaap_InvestmentIncomeNonoperating_97A2FE33EB7C4745F765A6E2971A65B0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentIncomeNonoperating_97A2FE33EB7C4745F765A6E2971A65B0" xlink:to="lab_us-gaap_InvestmentIncomeNonoperating_97A2FE33EB7C4745F765A6E2971A65B0" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_B02C059A4C8FA8BDC8ADA6E2971A5066_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense_B02C059A4C8FA8BDC8ADA6E2971A5066" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other income (expense)</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_B02C059A4C8FA8BDC8ADA6E2971A5066_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense_B02C059A4C8FA8BDC8ADA6E2971A5066" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Nonoperating Income (Expense)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_B02C059A4C8FA8BDC8ADA6E2971A5066" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpense_B02C059A4C8FA8BDC8ADA6E2971A5066" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpense_B02C059A4C8FA8BDC8ADA6E2971A5066" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_DA407D2E69280FFD802EA6E2971A6AEC_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_DA407D2E69280FFD802EA6E2971A6AEC" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income before income tax expense</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_DA407D2E69280FFD802EA6E2971A6AEC_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_DA407D2E69280FFD802EA6E2971A6AEC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_DA407D2E69280FFD802EA6E2971A6AEC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_DA407D2E69280FFD802EA6E2971A6AEC" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_DA407D2E69280FFD802EA6E2971A6AEC" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_4E91C764826727F56226A6E2971A640C_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit_4E91C764826727F56226A6E2971A640C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income tax expense (benefit)</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_4E91C764826727F56226A6E2971A640C_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit_4E91C764826727F56226A6E2971A640C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_4E91C764826727F56226A6E2971A640C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_4E91C764826727F56226A6E2971A640C" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit_4E91C764826727F56226A6E2971A640C" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetIncomeLoss_418BD3A5095AF3D159E6A6E2971A6211_totalLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss_418BD3A5095AF3D159E6A6E2971A6211" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net Income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_418BD3A5095AF3D159E6A6E2971A6211_label_en-US" xlink:label="lab_us-gaap_NetIncomeLoss_418BD3A5095AF3D159E6A6E2971A6211" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Income (Loss) Attributable to Parent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_418BD3A5095AF3D159E6A6E2971A6211" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss_418BD3A5095AF3D159E6A6E2971A6211" xlink:to="lab_us-gaap_NetIncomeLoss_418BD3A5095AF3D159E6A6E2971A6211" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareDilutedAbstract_28767FD558360C5A0D4BA6E2971B882B_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDilutedAbstract_28767FD558360C5A0D4BA6E2971B882B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income per weighted-average common and common-equivalent share:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDilutedAbstract_28767FD558360C5A0D4BA6E2971B882B_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDilutedAbstract_28767FD558360C5A0D4BA6E2971B882B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Diluted [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareDilutedAbstract" xlink:label="loc_us-gaap_EarningsPerShareDilutedAbstract_28767FD558360C5A0D4BA6E2971B882B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract_28767FD558360C5A0D4BA6E2971B882B" xlink:to="lab_us-gaap_EarningsPerShareDilutedAbstract_28767FD558360C5A0D4BA6E2971B882B" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_1EA8BA266DDEC87B6107A6E2971B8AE7_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_1EA8BA266DDEC87B6107A6E2971B8AE7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basic (usd per share)</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_1EA8BA266DDEC87B6107A6E2971B8AE7_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_1EA8BA266DDEC87B6107A6E2971B8AE7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations, Per Diluted Share</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_1EA8BA266DDEC87B6107A6E2971B8AE7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_1EA8BA266DDEC87B6107A6E2971B8AE7" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_1EA8BA266DDEC87B6107A6E2971B8AE7" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_4D250F92BBABD0039C99A6E2971B9AF0_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted_4D250F92BBABD0039C99A6E2971B9AF0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Diluted (usd per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_4D250F92BBABD0039C99A6E2971B9AF0_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted_4D250F92BBABD0039C99A6E2971B9AF0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Diluted</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_4D250F92BBABD0039C99A6E2971B9AF0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted_4D250F92BBABD0039C99A6E2971B9AF0" xlink:to="lab_us-gaap_EarningsPerShareDiluted_4D250F92BBABD0039C99A6E2971B9AF0" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_7410C73BE2F2B00E5E8CA6E2971BD0F2_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_7410C73BE2F2B00E5E8CA6E2971BD0F2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted-average common and common-equivalent shares outstanding:</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_7410C73BE2F2B00E5E8CA6E2971BD0F2_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_7410C73BE2F2B00E5E8CA6E2971BD0F2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_7410C73BE2F2B00E5E8CA6E2971BD0F2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_7410C73BE2F2B00E5E8CA6E2971BD0F2" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_7410C73BE2F2B00E5E8CA6E2971BD0F2" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_5E4B01D883C29E3035AFA6E2971BE2F3_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_5E4B01D883C29E3035AFA6E2971BE2F3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basic (shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_5E4B01D883C29E3035AFA6E2971BE2F3_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_5E4B01D883C29E3035AFA6E2971BE2F3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_5E4B01D883C29E3035AFA6E2971BE2F3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_5E4B01D883C29E3035AFA6E2971BE2F3" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_5E4B01D883C29E3035AFA6E2971BE2F3" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_452EEE18441FAF1C0922A6E2971C63ED_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_452EEE18441FAF1C0922A6E2971C63ED" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Diluted (shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_452EEE18441FAF1C0922A6E2971C63ED_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_452EEE18441FAF1C0922A6E2971C63ED" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_452EEE18441FAF1C0922A6E2971C63ED" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_452EEE18441FAF1C0922A6E2971C63ED" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_452EEE18441FAF1C0922A6E2971C63ED" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockDividendsPerShareCashPaid_69E446D7B3BF298BEF87A6E2971CDDE2_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockDividendsPerShareCashPaid_69E446D7B3BF298BEF87A6E2971CDDE2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash dividends per common share (usd per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockDividendsPerShareCashPaid_69E446D7B3BF298BEF87A6E2971CDDE2_label_en-US" xlink:label="lab_us-gaap_CommonStockDividendsPerShareCashPaid_69E446D7B3BF298BEF87A6E2971CDDE2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Dividends, Per Share, Cash Paid</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockDividendsPerShareCashPaid" xlink:label="loc_us-gaap_CommonStockDividendsPerShareCashPaid_69E446D7B3BF298BEF87A6E2971CDDE2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockDividendsPerShareCashPaid_69E446D7B3BF298BEF87A6E2971CDDE2" xlink:to="lab_us-gaap_CommonStockDividendsPerShareCashPaid_69E446D7B3BF298BEF87A6E2971CDDE2" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_5966BACA070C2163362894A14FFFB138_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract_797218A2CCDB5BE297205A10B1EE4850" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_797218A2CCDB5BE297205A10B1EE4850" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_797218A2CCDB5BE297205A10B1EE4850" xlink:to="lab_us-gaap_IncomeTaxDisclosureAbstract_797218A2CCDB5BE297205A10B1EE4850" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_C60A0AE0CF99628F0A1C94A150004BB8_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock_3806A014FDA9554CB5A7ED8008273196" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_C60A0AE0CF99628F0A1C94A150004BB8_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock_3806A014FDA9554CB5A7ED8008273196" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_3806A014FDA9554CB5A7ED8008273196" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureTextBlock_3806A014FDA9554CB5A7ED8008273196" xlink:to="lab_us-gaap_IncomeTaxDisclosureTextBlock_3806A014FDA9554CB5A7ED8008273196" xlink:type="arc" />
    <link:label id="lab_cgnx_DocumentAndEntityInformationAbstract_0377D9F56565645119AFADFB427F41F2_label_en-US" xlink:label="lab_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document And Entity Information [Abstract]</link:label>
    <link:label id="lab_cgnx_DocumentAndEntityInformationAbstract_0377D9F56565645119AFADFB427F41F2_documentation_en-US" xlink:label="lab_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Document and entity information.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_DocumentAndEntityInformationAbstract" xlink:label="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:to="lab_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:type="arc" />
    <link:label id="lab_dei_EntityRegistrantName_F1A0B14BCC8575261787ADFB427F0094_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName_E4BA0BA825415763ABE0530B8CE8A737" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:label id="lab_dei_EntityRegistrantName_F1A0B14BCC8575261787ADFB427F0094_label_en-US" xlink:label="lab_dei_EntityRegistrantName_E4BA0BA825415763ABE0530B8CE8A737" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityRegistrantName" xlink:label="loc_dei_EntityRegistrantName_E4BA0BA825415763ABE0530B8CE8A737" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName_E4BA0BA825415763ABE0530B8CE8A737" xlink:to="lab_dei_EntityRegistrantName_E4BA0BA825415763ABE0530B8CE8A737" xlink:type="arc" />
    <link:label id="lab_dei_EntityCentralIndexKey_A3C6E697918F168530CDADFB427F305C_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey_011BFB012E335AAE82C932E0C615A6F2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:label id="lab_dei_EntityCentralIndexKey_A3C6E697918F168530CDADFB427F305C_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey_011BFB012E335AAE82C932E0C615A6F2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="loc_dei_EntityCentralIndexKey_011BFB012E335AAE82C932E0C615A6F2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey_011BFB012E335AAE82C932E0C615A6F2" xlink:to="lab_dei_EntityCentralIndexKey_011BFB012E335AAE82C932E0C615A6F2" xlink:type="arc" />
    <link:label id="lab_dei_CurrentFiscalYearEndDate_7C495E6F6028E5EC1976ADFB428090D8_terseLabel_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate_7CDDB08666D25045AEE18B8AE3E6EEE0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_7C495E6F6028E5EC1976ADFB428090D8_label_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate_7CDDB08666D25045AEE18B8AE3E6EEE0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_dei_CurrentFiscalYearEndDate_7CDDB08666D25045AEE18B8AE3E6EEE0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate_7CDDB08666D25045AEE18B8AE3E6EEE0" xlink:to="lab_dei_CurrentFiscalYearEndDate_7CDDB08666D25045AEE18B8AE3E6EEE0" xlink:type="arc" />
    <link:label id="lab_dei_EntityFilerCategory_0C93FFA5CD53CF2B7864ADFB428088FA_terseLabel_en-US" xlink:label="lab_dei_EntityFilerCategory_FCF601AE2AAB502482A85DF57ED42831" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Filer Category</link:label>
    <link:label id="lab_dei_EntityFilerCategory_0C93FFA5CD53CF2B7864ADFB428088FA_label_en-US" xlink:label="lab_dei_EntityFilerCategory_FCF601AE2AAB502482A85DF57ED42831" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Filer Category</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityFilerCategory" xlink:label="loc_dei_EntityFilerCategory_FCF601AE2AAB502482A85DF57ED42831" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory_FCF601AE2AAB502482A85DF57ED42831" xlink:to="lab_dei_EntityFilerCategory_FCF601AE2AAB502482A85DF57ED42831" xlink:type="arc" />
    <link:label id="lab_dei_DocumentType_79D6E7CFE79C16D1DA05ADFB4280CA16_terseLabel_en-US" xlink:label="lab_dei_DocumentType_0EACC27E249551349174165482FA0E92" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:label id="lab_dei_DocumentType_79D6E7CFE79C16D1DA05ADFB4280CA16_label_en-US" xlink:label="lab_dei_DocumentType_0EACC27E249551349174165482FA0E92" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentType" xlink:label="loc_dei_DocumentType_0EACC27E249551349174165482FA0E92" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType_0EACC27E249551349174165482FA0E92" xlink:to="lab_dei_DocumentType_0EACC27E249551349174165482FA0E92" xlink:type="arc" />
    <link:label id="lab_dei_DocumentPeriodEndDate_3549BF0933BBB133A9B0ADFB42802BFA_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate_AB715FF9621C54939778D4F9033477A7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:label id="lab_dei_DocumentPeriodEndDate_3549BF0933BBB133A9B0ADFB42802BFA_label_en-US" xlink:label="lab_dei_DocumentPeriodEndDate_AB715FF9621C54939778D4F9033477A7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_AB715FF9621C54939778D4F9033477A7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate_AB715FF9621C54939778D4F9033477A7" xlink:to="lab_dei_DocumentPeriodEndDate_AB715FF9621C54939778D4F9033477A7" xlink:type="arc" />
    <link:label id="lab_dei_DocumentFiscalYearFocus_768E2832C22718F5C615ADFB428065FE_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus_C1F03A8EB4685923BFEB02E0D0F3552D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalYearFocus_768E2832C22718F5C615ADFB428065FE_label_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus_C1F03A8EB4685923BFEB02E0D0F3552D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_dei_DocumentFiscalYearFocus_C1F03A8EB4685923BFEB02E0D0F3552D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus_C1F03A8EB4685923BFEB02E0D0F3552D" xlink:to="lab_dei_DocumentFiscalYearFocus_C1F03A8EB4685923BFEB02E0D0F3552D" xlink:type="arc" />
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_980BD6E5DF7E2E48D51AADFB428139A7_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus_EBA1F782916355A6893630B4F7DF893B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_980BD6E5DF7E2E48D51AADFB428139A7_label_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus_EBA1F782916355A6893630B4F7DF893B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_dei_DocumentFiscalPeriodFocus_EBA1F782916355A6893630B4F7DF893B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus_EBA1F782916355A6893630B4F7DF893B" xlink:to="lab_dei_DocumentFiscalPeriodFocus_EBA1F782916355A6893630B4F7DF893B" xlink:type="arc" />
    <link:label id="lab_dei_AmendmentFlag_075000C2BDE286D70BE6ADFB42813CB0_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag_0B00625E73865B589F22C0C41BE3E0D0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:label id="lab_dei_AmendmentFlag_075000C2BDE286D70BE6ADFB42813CB0_label_en-US" xlink:label="lab_dei_AmendmentFlag_0B00625E73865B589F22C0C41BE3E0D0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_AmendmentFlag" xlink:label="loc_dei_AmendmentFlag_0B00625E73865B589F22C0C41BE3E0D0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag_0B00625E73865B589F22C0C41BE3E0D0" xlink:to="lab_dei_AmendmentFlag_0B00625E73865B589F22C0C41BE3E0D0" xlink:type="arc" />
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_4A5A4EC7614DD4E1D1E9ADFB42811A62_terseLabel_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding_DB77228266D75F1DAB9957EA11BAFB72" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_4A5A4EC7614DD4E1D1E9ADFB42811A62_label_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding_DB77228266D75F1DAB9957EA11BAFB72" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_DB77228266D75F1DAB9957EA11BAFB72" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding_DB77228266D75F1DAB9957EA11BAFB72" xlink:to="lab_dei_EntityCommonStockSharesOutstanding_DB77228266D75F1DAB9957EA11BAFB72" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesGrossRealizedGains_E5C1056436F2F5CE6E4094A14FF57D17_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesGrossRealizedGains_AEF43082102958FF8F62F77E102F4205" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross realized gains on sale of investments</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesGrossRealizedGains_E5C1056436F2F5CE6E4094A14FF57D17_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesGrossRealizedGains_AEF43082102958FF8F62F77E102F4205" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Gross Realized Gains</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesGrossRealizedGains" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesGrossRealizedGains_AEF43082102958FF8F62F77E102F4205" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesGrossRealizedGains_AEF43082102958FF8F62F77E102F4205" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesGrossRealizedGains_AEF43082102958FF8F62F77E102F4205" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses_063D74A09BD91881CF9794A14FF58F65_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses_628CDBE1C5F75854863658A4ED6B2AC3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross realized losses on sale of investments</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses_063D74A09BD91881CF9794A14FF58F65_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses_628CDBE1C5F75854863658A4ED6B2AC3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Gross Realized Losses</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses_628CDBE1C5F75854863658A4ED6B2AC3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses_628CDBE1C5F75854863658A4ED6B2AC3" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses_628CDBE1C5F75854863658A4ED6B2AC3" xlink:type="arc" />
    <link:label id="lab_us-gaap_IntangibleAssetsDisclosureTextBlock_AA3254B782D2275543BA94A14F2033E4_terseLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsDisclosureTextBlock_2C337C44F9265CD29F4100E0AB6A258B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Intangible Assets</link:label>
    <link:label id="lab_us-gaap_IntangibleAssetsDisclosureTextBlock_AA3254B782D2275543BA94A14F2033E4_label_en-US" xlink:label="lab_us-gaap_IntangibleAssetsDisclosureTextBlock_2C337C44F9265CD29F4100E0AB6A258B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Intangible Assets Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaap_IntangibleAssetsDisclosureTextBlock_2C337C44F9265CD29F4100E0AB6A258B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsDisclosureTextBlock_2C337C44F9265CD29F4100E0AB6A258B" xlink:to="lab_us-gaap_IntangibleAssetsDisclosureTextBlock_2C337C44F9265CD29F4100E0AB6A258B" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueDisclosuresAbstract_6EBAE37FADEEA6BD3147B895CE6BEE01_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract_F08B70A95507565E951EAF28C587CE5B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Disclosures [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_F08B70A95507565E951EAF28C587CE5B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_F08B70A95507565E951EAF28C587CE5B" xlink:to="lab_us-gaap_FairValueDisclosuresAbstract_F08B70A95507565E951EAF28C587CE5B" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_89283E1F42F7A1DE54B2B895CE6B4090_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table]</link:label>
    <link:label id="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_89283E1F42F7A1DE54B2B895CE6B4090_label_en-US" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:to="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_EB41EA98BC663030E772B895CE6BE720_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis_CE8CFD3BDB245574BC05E904A71EACCD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_EB41EA98BC663030E772B895CE6BE720_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis_CE8CFD3BDB245574BC05E904A71EACCD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_CE8CFD3BDB245574BC05E904A71EACCD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_CE8CFD3BDB245574BC05E904A71EACCD" xlink:to="lab_us-gaap_BusinessAcquisitionAxis_CE8CFD3BDB245574BC05E904A71EACCD" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_CC3211FD51E6023E6DF6B895CE6BE73B_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_CC3211FD51E6023E6DF6B895CE6BE73B_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:to="lab_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:type="arc" />
    <link:label id="lab_cgnx_ManateeWorksInc.Member_CAA7B9FF98D5D88D39BBB895CE6CE4F5_terseLabel_en-US" xlink:label="lab_cgnx_ManateeWorksInc.Member_F2ACEACDF66A5D82BB5A4A02B853228C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Manatee</link:label>
    <link:label id="lab_cgnx_ManateeWorksInc.Member_CAA7B9FF98D5D88D39BBB895CE6CE4F5_label_en-US" xlink:label="lab_cgnx_ManateeWorksInc.Member_F2ACEACDF66A5D82BB5A4A02B853228C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Manatee Works, Inc. [Member]</link:label>
    <link:label id="lab_cgnx_ManateeWorksInc.Member_CAA7B9FF98D5D88D39BBB895CE6CE4F5_documentation_en-US" xlink:label="lab_cgnx_ManateeWorksInc.Member_F2ACEACDF66A5D82BB5A4A02B853228C" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Manatee Works, Inc. [Member]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ManateeWorksInc.Member" xlink:label="loc_cgnx_ManateeWorksInc.Member_F2ACEACDF66A5D82BB5A4A02B853228C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ManateeWorksInc.Member_F2ACEACDF66A5D82BB5A4A02B853228C" xlink:to="lab_cgnx_ManateeWorksInc.Member_F2ACEACDF66A5D82BB5A4A02B853228C" xlink:type="arc" />
    <link:label id="lab_cgnx_GViVenturesInc.Member_5AE02E206D1A2E9F9022B895CE6CCF9F_verboseLabel_en-US" xlink:label="lab_cgnx_GViVenturesInc.Member_77D6E1214CC55568AA7AB3DC72CC13EB" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">GVi</link:label>
    <link:label id="lab_cgnx_GViVenturesInc.Member_5AE02E206D1A2E9F9022B895CE6CCF9F_label_en-US" xlink:label="lab_cgnx_GViVenturesInc.Member_77D6E1214CC55568AA7AB3DC72CC13EB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">GVi Ventures, Inc. [Member]</link:label>
    <link:label id="lab_cgnx_GViVenturesInc.Member_5AE02E206D1A2E9F9022B895CE6CCF9F_documentation_en-US" xlink:label="lab_cgnx_GViVenturesInc.Member_77D6E1214CC55568AA7AB3DC72CC13EB" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">GVi Ventures, Inc. [Member]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_GViVenturesInc.Member" xlink:label="loc_cgnx_GViVenturesInc.Member_77D6E1214CC55568AA7AB3DC72CC13EB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_GViVenturesInc.Member_77D6E1214CC55568AA7AB3DC72CC13EB" xlink:to="lab_cgnx_GViVenturesInc.Member_77D6E1214CC55568AA7AB3DC72CC13EB" xlink:type="arc" />
    <link:label id="lab_cgnx_ChiaroTechnologiesLLCMember_A89B99C398525D8E90B5B895CE6C3ED9_terseLabel_en-US" xlink:label="lab_cgnx_ChiaroTechnologiesLLCMember_F2E2C7E2D798592191299064C9F71185" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Chiaro Technologies LLC [Member]</link:label>
    <link:label id="lab_cgnx_ChiaroTechnologiesLLCMember_A89B99C398525D8E90B5B895CE6C3ED9_label_en-US" xlink:label="lab_cgnx_ChiaroTechnologiesLLCMember_F2E2C7E2D798592191299064C9F71185" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Chiaro Technologies LLC [Member]</link:label>
    <link:label id="lab_cgnx_ChiaroTechnologiesLLCMember_A89B99C398525D8E90B5B895CE6C3ED9_documentation_en-US" xlink:label="lab_cgnx_ChiaroTechnologiesLLCMember_F2E2C7E2D798592191299064C9F71185" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Chiaro Technologies LLC [Member]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ChiaroTechnologiesLLCMember" xlink:label="loc_cgnx_ChiaroTechnologiesLLCMember_F2E2C7E2D798592191299064C9F71185" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ChiaroTechnologiesLLCMember_F2E2C7E2D798592191299064C9F71185" xlink:to="lab_cgnx_ChiaroTechnologiesLLCMember_F2E2C7E2D798592191299064C9F71185" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_2CDD957DEB753AF40DD1B895CE6C72F6_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_415C766AAA9D5E2F95D2ECFD6FA44199" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Hierarchy [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_2CDD957DEB753AF40DD1B895CE6C72F6_label_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_415C766AAA9D5E2F95D2ECFD6FA44199" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Hierarchy [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_415C766AAA9D5E2F95D2ECFD6FA44199" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_415C766AAA9D5E2F95D2ECFD6FA44199" xlink:to="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_415C766AAA9D5E2F95D2ECFD6FA44199" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_BDD48DE2A5884A55AC01B895CE6C4E8C_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_E2DF88656DDB5A00B20E4EB0DD4CF62E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_BDD48DE2A5884A55AC01B895CE6C4E8C_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_E2DF88656DDB5A00B20E4EB0DD4CF62E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_E2DF88656DDB5A00B20E4EB0DD4CF62E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_E2DF88656DDB5A00B20E4EB0DD4CF62E" xlink:to="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_E2DF88656DDB5A00B20E4EB0DD4CF62E" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_C632FC5F62440A6603FAB895CE6D02F5_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member_CC2542F0E8FF5F539AE0B270A6BF9AD9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 3</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_C632FC5F62440A6603FAB895CE6D02F5_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member_CC2542F0E8FF5F539AE0B270A6BF9AD9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 3 [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_CC2542F0E8FF5F539AE0B270A6BF9AD9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel3Member_CC2542F0E8FF5F539AE0B270A6BF9AD9" xlink:to="lab_us-gaap_FairValueInputsLevel3Member_CC2542F0E8FF5F539AE0B270A6BF9AD9" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueByMeasurementFrequencyAxis_9D4400FBA4EDEF841B59B895CE6DD4EB_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByMeasurementFrequencyAxis_C8F88600DA875D2A801B9CF67E0F6110" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Measurement Frequency [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByMeasurementFrequencyAxis_9D4400FBA4EDEF841B59B895CE6DD4EB_label_en-US" xlink:label="lab_us-gaap_FairValueByMeasurementFrequencyAxis_C8F88600DA875D2A801B9CF67E0F6110" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Measurement Frequency [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_C8F88600DA875D2A801B9CF67E0F6110" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_C8F88600DA875D2A801B9CF67E0F6110" xlink:to="lab_us-gaap_FairValueByMeasurementFrequencyAxis_C8F88600DA875D2A801B9CF67E0F6110" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueMeasurementFrequencyDomain_531E23A3C9BCECE7D99BB895CE6D4689_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementFrequencyDomain_D7B35A9A93E656DF94353A8B040F3D92" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Measurement Frequency [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementFrequencyDomain_531E23A3C9BCECE7D99BB895CE6D4689_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementFrequencyDomain_D7B35A9A93E656DF94353A8B040F3D92" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Measurement Frequency [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_D7B35A9A93E656DF94353A8B040F3D92" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_D7B35A9A93E656DF94353A8B040F3D92" xlink:to="lab_us-gaap_FairValueMeasurementFrequencyDomain_D7B35A9A93E656DF94353A8B040F3D92" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueMeasurementsRecurringMember_8BDB99865608C60010F6B895CE6D6273_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsRecurringMember_992F570581D751A5976BAAC3BFD6AF42" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Measurements, Recurring</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsRecurringMember_8BDB99865608C60010F6B895CE6D6273_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsRecurringMember_992F570581D751A5976BAAC3BFD6AF42" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Measurements, Recurring [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember_992F570581D751A5976BAAC3BFD6AF42" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsRecurringMember_992F570581D751A5976BAAC3BFD6AF42" xlink:to="lab_us-gaap_FairValueMeasurementsRecurringMember_992F570581D751A5976BAAC3BFD6AF42" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_A1B6E5CAE90CDA645178B895CE6E5098_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]</link:label>
    <link:label id="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_A1B6E5CAE90CDA645178B895CE6E5098_label_en-US" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:to="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_C05086378034297A5718B895CE6E7868_periodStartLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_37B2CC2A18755E3F9E88A9AAFC0F96EB" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Beginning balance</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_C05086378034297A5718B895CE6E7868_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_37B2CC2A18755E3F9E88A9AAFC0F96EB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliations, Recurring Basis, Liability Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_37B2CC2A18755E3F9E88A9AAFC0F96EB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_37B2CC2A18755E3F9E88A9AAFC0F96EB" xlink:to="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_37B2CC2A18755E3F9E88A9AAFC0F96EB" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesFairValueAdjustment_8ED57EB47611C1B56C1CB895CE6E20A3_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueAdjustment_A33706A02215560DB8F2C6618D2C3B7D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Liabilities, Fair Value Adjustment</link:label>
    <link:label id="lab_us-gaap_LiabilitiesFairValueAdjustment_8ED57EB47611C1B56C1CB895CE6E20A3_label_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueAdjustment_A33706A02215560DB8F2C6618D2C3B7D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Fair Value Adjustment</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesFairValueAdjustment" xlink:label="loc_us-gaap_LiabilitiesFairValueAdjustment_A33706A02215560DB8F2C6618D2C3B7D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesFairValueAdjustment_A33706A02215560DB8F2C6618D2C3B7D" xlink:to="lab_us-gaap_LiabilitiesFairValueAdjustment_A33706A02215560DB8F2C6618D2C3B7D" xlink:type="arc" />
    <link:label id="lab_cgnx_Paymentofcontingentconsideration_D8DDC5188C12B44EDABCB895CE6E7D53_negatedLabel_en-US" xlink:label="lab_cgnx_Paymentofcontingentconsideration_205420FE8C3C55AA85178D7366E4B640" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Payment of contingent consideration</link:label>
    <link:label id="lab_cgnx_Paymentofcontingentconsideration_D8DDC5188C12B44EDABCB895CE6E7D53_label_en-US" xlink:label="lab_cgnx_Paymentofcontingentconsideration_205420FE8C3C55AA85178D7366E4B640" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payment of contingent consideration</link:label>
    <link:label id="lab_cgnx_Paymentofcontingentconsideration_D8DDC5188C12B44EDABCB895CE6E7D53_documentation_en-US" xlink:label="lab_cgnx_Paymentofcontingentconsideration_205420FE8C3C55AA85178D7366E4B640" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Payment of contingent consideration from a business combination</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Paymentofcontingentconsideration" xlink:label="loc_cgnx_Paymentofcontingentconsideration_205420FE8C3C55AA85178D7366E4B640" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_Paymentofcontingentconsideration_205420FE8C3C55AA85178D7366E4B640" xlink:to="lab_cgnx_Paymentofcontingentconsideration_205420FE8C3C55AA85178D7366E4B640" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_3241FA08B7B4EED90B9AB895CE6E0770_periodEndLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_94E8F70AE5C15E9690E9536077C435C9" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Ending balance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_94E8F70AE5C15E9690E9536077C435C9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_94E8F70AE5C15E9690E9536077C435C9" xlink:to="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_94E8F70AE5C15E9690E9536077C435C9" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsequentEventsAbstract_14B9703CBE94D6F0C5ED94A14FF13D5A_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsAbstract_D8B0650F2905555C9B5E369CF755CA7B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Events [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaap_SubsequentEventsAbstract_D8B0650F2905555C9B5E369CF755CA7B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsAbstract_D8B0650F2905555C9B5E369CF755CA7B" xlink:to="lab_us-gaap_SubsequentEventsAbstract_D8B0650F2905555C9B5E369CF755CA7B" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_D2598E97547E0541EA8994A14FF11770_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock_F9661FF61DA95240A1BC6DA0D7AC8FB7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Events</link:label>
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_D2598E97547E0541EA8994A14FF11770_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock_F9661FF61DA95240A1BC6DA0D7AC8FB7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Events [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="loc_us-gaap_SubsequentEventsTextBlock_F9661FF61DA95240A1BC6DA0D7AC8FB7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsTextBlock_F9661FF61DA95240A1BC6DA0D7AC8FB7" xlink:to="lab_us-gaap_SubsequentEventsTextBlock_F9661FF61DA95240A1BC6DA0D7AC8FB7" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Products and Services [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Products and Services [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40" xlink:to="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE_terseLabel_en-US" xlink:label="lab_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Products and Services [Axis]</link:label>
    <link:label id="lab_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE_label_en-US" xlink:label="lab_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Products and Services [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductOrServiceAxis" xlink:label="loc_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE" xlink:to="lab_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF_terseLabel_en-US" xlink:label="lab_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Products and Services [Domain]</link:label>
    <link:label id="lab_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF_label_en-US" xlink:label="lab_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Products and Services [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductsAndServicesDomain" xlink:label="loc_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:to="lab_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:type="arc" />
    <link:label id="lab_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163_terseLabel_en-US" xlink:label="lab_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Standard Products and Services</link:label>
    <link:label id="lab_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163_label_en-US" xlink:label="lab_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard Products and Services [Member]</link:label>
    <link:label id="lab_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163_documentation_en-US" xlink:label="lab_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Standard Products and Services [Member]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_StandardProductsandServicesMember" xlink:label="loc_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163" xlink:to="lab_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163" xlink:type="arc" />
    <link:label id="lab_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13_terseLabel_en-US" xlink:label="lab_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Application-Specific Customer Solutions</link:label>
    <link:label id="lab_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13_label_en-US" xlink:label="lab_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Application-Specific Customer Solutions [Member]</link:label>
    <link:label id="lab_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13_documentation_en-US" xlink:label="lab_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Application-Specific Customer Solutions [Member]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ApplicationSpecificCustomerSolutionsMember" xlink:label="loc_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13" xlink:to="lab_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13" xlink:type="arc" />
    <link:label id="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A_terseLabel_en-US" xlink:label="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from External Customer [Line Items]</link:label>
    <link:label id="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A_label_en-US" xlink:label="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from External Customer [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:label="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A" xlink:to="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event [Table]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventTable" xlink:label="loc_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0" xlink:to="lab_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C" xlink:to="lab_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F" xlink:to="lab_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsequentEventMember_6DFE171DBA0CB366BB6BB16C14B29047_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventMember_6DFE171DBA0CB366BB6BB16C14B29047" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event</link:label>
    <link:label id="lab_us-gaap_SubsequentEventMember_6DFE171DBA0CB366BB6BB16C14B29047_label_en-US" xlink:label="lab_us-gaap_SubsequentEventMember_6DFE171DBA0CB366BB6BB16C14B29047" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaap_SubsequentEventMember_6DFE171DBA0CB366BB6BB16C14B29047" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventMember_6DFE171DBA0CB366BB6BB16C14B29047" xlink:to="lab_us-gaap_SubsequentEventMember_6DFE171DBA0CB366BB6BB16C14B29047" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event [Line Items]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A_label_en-US" xlink:label="lab_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventLineItems" xlink:label="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:to="lab_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:type="arc" />
    <link:label id="lab_us-gaap_Dividends_D61A87164417E71C1A88B16C14B4D801_terseLabel_en-US" xlink:label="lab_us-gaap_Dividends_D61A87164417E71C1A88B16C14B4D801" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Dividends (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_Dividends_D61A87164417E71C1A88B16C14B4D801_label_en-US" xlink:label="lab_us-gaap_Dividends_D61A87164417E71C1A88B16C14B4D801" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Dividends</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Dividends" xlink:label="loc_us-gaap_Dividends_D61A87164417E71C1A88B16C14B4D801" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Dividends_D61A87164417E71C1A88B16C14B4D801" xlink:to="lab_us-gaap_Dividends_D61A87164417E71C1A88B16C14B4D801" xlink:type="arc" />
    <link:label id="lab_us-gaap_DividendPayableDateToBePaidDayMonthAndYear_C0F6C92C78CFD08E5A62B16C14B54BEC_terseLabel_en-US" xlink:label="lab_us-gaap_DividendPayableDateToBePaidDayMonthAndYear_C0F6C92C78CFD08E5A62B16C14B54BEC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Dividends payable, date payable</link:label>
    <link:label id="lab_us-gaap_DividendPayableDateToBePaidDayMonthAndYear_C0F6C92C78CFD08E5A62B16C14B54BEC_label_en-US" xlink:label="lab_us-gaap_DividendPayableDateToBePaidDayMonthAndYear_C0F6C92C78CFD08E5A62B16C14B54BEC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Dividends Payable, Date to be Paid</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DividendPayableDateToBePaidDayMonthAndYear" xlink:label="loc_us-gaap_DividendPayableDateToBePaidDayMonthAndYear_C0F6C92C78CFD08E5A62B16C14B54BEC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendPayableDateToBePaidDayMonthAndYear_C0F6C92C78CFD08E5A62B16C14B54BEC" xlink:to="lab_us-gaap_DividendPayableDateToBePaidDayMonthAndYear_C0F6C92C78CFD08E5A62B16C14B54BEC" xlink:type="arc" />
    <link:label id="lab_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_74F2CD67363055CA7B6FB16C14B50A63_terseLabel_en-US" xlink:label="lab_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_74F2CD67363055CA7B6FB16C14B50A63" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Dividends payable, date of record</link:label>
    <link:label id="lab_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_74F2CD67363055CA7B6FB16C14B50A63_label_en-US" xlink:label="lab_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_74F2CD67363055CA7B6FB16C14B50A63" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Dividends Payable, Date of Record</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DividendsPayableDateOfRecordDayMonthAndYear" xlink:label="loc_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_74F2CD67363055CA7B6FB16C14B50A63" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_74F2CD67363055CA7B6FB16C14B50A63" xlink:to="lab_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_74F2CD67363055CA7B6FB16C14B50A63" xlink:type="arc" />
    <link:label id="lab_cgnx_StockRepurchaseProgramValue_85EE1CA05334DBE46AB4B16D4C63F5F4_label_en-US" xlink:label="lab_cgnx_StockRepurchaseProgramValue_85EE1CA05334DBE46AB4B16D4C63F5F4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Value</link:label>
    <link:label id="lab_cgnx_StockRepurchaseProgramValue_85EE1CA05334DBE46AB4B16D4C63F5F4_documentation_en-US" xlink:label="lab_cgnx_StockRepurchaseProgramValue_85EE1CA05334DBE46AB4B16D4C63F5F4" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Value</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_StockRepurchaseProgramValue" xlink:label="loc_cgnx_StockRepurchaseProgramValue_85EE1CA05334DBE46AB4B16D4C63F5F4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_StockRepurchaseProgramValue_85EE1CA05334DBE46AB4B16D4C63F5F4" xlink:to="lab_cgnx_StockRepurchaseProgramValue_85EE1CA05334DBE46AB4B16D4C63F5F4" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_7F3FAD60B5704A51CA1194A15004DAE9_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_95F60FA38FD25798996BA56CA8B1E6CD" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Basic weighted-average common shares outstanding</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_95F60FA38FD25798996BA56CA8B1E6CD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_95F60FA38FD25798996BA56CA8B1E6CD" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_95F60FA38FD25798996BA56CA8B1E6CD" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_CBFD647A84B8D79EA27294A15004637E_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_0C2C355954A55C3C934A1BDF9D378BE0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effect of dilutive stock options</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_CBFD647A84B8D79EA27294A15004637E_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_0C2C355954A55C3C934A1BDF9D378BE0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number Diluted Shares Outstanding Adjustment</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_0C2C355954A55C3C934A1BDF9D378BE0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_0C2C355954A55C3C934A1BDF9D378BE0" xlink:to="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_0C2C355954A55C3C934A1BDF9D378BE0" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_E010753B7949037693CB94A15005AA43_totalLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_89981E34B9B55F4DB5A82126AA2A3D1D" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Weighted-average common and common-equivalent shares outstanding</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_89981E34B9B55F4DB5A82126AA2A3D1D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_89981E34B9B55F4DB5A82126AA2A3D1D" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_89981E34B9B55F4DB5A82126AA2A3D1D" xlink:type="arc" />
    <link:label id="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements or Change in Accounting Principle [Table]</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements or Change in Accounting Principle [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:to="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustments for New Accounting Pronouncements [Axis]</link:label>
    <link:label id="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716_label_en-US" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments for New Accounting Pronouncements [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716" xlink:to="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716" xlink:type="arc" />
    <link:label id="lab_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F_terseLabel_en-US" xlink:label="lab_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Type of Adoption [Domain]</link:label>
    <link:label id="lab_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F_label_en-US" xlink:label="lab_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Type of Adoption [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F" xlink:to="lab_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountingStandardsUpdate201409Member_F256CBF9B4524CDA755EADA00CC6BC69_terseLabel_en-US" xlink:label="lab_us-gaap_AccountingStandardsUpdate201409Member_F256CBF9B4524CDA755EADA00CC6BC69" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Standards Update 2014-09</link:label>
    <link:label id="lab_us-gaap_AccountingStandardsUpdate201409Member_F256CBF9B4524CDA755EADA00CC6BC69_label_en-US" xlink:label="lab_us-gaap_AccountingStandardsUpdate201409Member_F256CBF9B4524CDA755EADA00CC6BC69" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Standards Update 2014-09 [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201409Member" xlink:label="loc_us-gaap_AccountingStandardsUpdate201409Member_F256CBF9B4524CDA755EADA00CC6BC69" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingStandardsUpdate201409Member_F256CBF9B4524CDA755EADA00CC6BC69" xlink:to="lab_us-gaap_AccountingStandardsUpdate201409Member_F256CBF9B4524CDA755EADA00CC6BC69" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142_terseLabel_en-US" xlink:label="lab_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Scenario [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142_label_en-US" xlink:label="lab_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Scenario [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="loc_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142" xlink:to="lab_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F_terseLabel_en-US" xlink:label="lab_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Scenario, Unspecified [Domain]</link:label>
    <link:label id="lab_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F_label_en-US" xlink:label="lab_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Scenario, Unspecified [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="loc_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:to="lab_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScenarioPreviouslyReportedMember_0778A184D5CC27F9C38EADA008F18C58_terseLabel_en-US" xlink:label="lab_us-gaap_ScenarioPreviouslyReportedMember_0778A184D5CC27F9C38EADA008F18C58" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">As previously reported</link:label>
    <link:label id="lab_us-gaap_ScenarioPreviouslyReportedMember_0778A184D5CC27F9C38EADA008F18C58_label_en-US" xlink:label="lab_us-gaap_ScenarioPreviouslyReportedMember_0778A184D5CC27F9C38EADA008F18C58" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Scenario, Previously Reported [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioPreviouslyReportedMember" xlink:label="loc_us-gaap_ScenarioPreviouslyReportedMember_0778A184D5CC27F9C38EADA008F18C58" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScenarioPreviouslyReportedMember_0778A184D5CC27F9C38EADA008F18C58" xlink:to="lab_us-gaap_ScenarioPreviouslyReportedMember_0778A184D5CC27F9C38EADA008F18C58" xlink:type="arc" />
    <link:label id="lab_us-gaap_RestatementAdjustmentMember_F0C580F8994D568DCECAADA00F42BCA5_terseLabel_en-US" xlink:label="lab_us-gaap_RestatementAdjustmentMember_F0C580F8994D568DCECAADA00F42BCA5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustment</link:label>
    <link:label id="lab_us-gaap_RestatementAdjustmentMember_F0C580F8994D568DCECAADA00F42BCA5_label_en-US" xlink:label="lab_us-gaap_RestatementAdjustmentMember_F0C580F8994D568DCECAADA00F42BCA5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restatement Adjustment [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestatementAdjustmentMember" xlink:label="loc_us-gaap_RestatementAdjustmentMember_F0C580F8994D568DCECAADA00F42BCA5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestatementAdjustmentMember_F0C580F8994D568DCECAADA00F42BCA5" xlink:to="lab_us-gaap_RestatementAdjustmentMember_F0C580F8994D568DCECAADA00F42BCA5" xlink:type="arc" />
    <link:label id="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements or Change in Accounting Principle [Line Items]</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements or Change in Accounting Principle [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:type="arc" />
    <link:label id="lab_us-gaap_GrossProfit_E899E3B92EE6138C6A3DAD83C6B24EF7_terseLabel_en-US" xlink:label="lab_us-gaap_GrossProfit_E899E3B92EE6138C6A3DAD83C6B24EF7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross margin</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_E899E3B92EE6138C6A3DAD83C6B24EF7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit_E899E3B92EE6138C6A3DAD83C6B24EF7" xlink:to="lab_us-gaap_GrossProfit_E899E3B92EE6138C6A3DAD83C6B24EF7" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingIncomeLoss_705F3CC4C83D4BC41002AD83F79DE55F_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss_705F3CC4C83D4BC41002AD83F79DE55F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating income</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_705F3CC4C83D4BC41002AD83F79DE55F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss_705F3CC4C83D4BC41002AD83F79DE55F" xlink:to="lab_us-gaap_OperatingIncomeLoss_705F3CC4C83D4BC41002AD83F79DE55F" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_9631D40E6974028DAD87AD841A6B3066_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_9631D40E6974028DAD87AD841A6B3066" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income before income tax expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_9631D40E6974028DAD87AD841A6B3066" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_9631D40E6974028DAD87AD841A6B3066" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_9631D40E6974028DAD87AD841A6B3066" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetIncomeLoss_C4E5C23309CA032A2C89AD844CB54DBB_terseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss_C4E5C23309CA032A2C89AD844CB54DBB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_C4E5C23309CA032A2C89AD844CB54DBB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss_C4E5C23309CA032A2C89AD844CB54DBB" xlink:to="lab_us-gaap_NetIncomeLoss_C4E5C23309CA032A2C89AD844CB54DBB" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_BFE0806ED7C168590EFBA6E296F77FA7_label_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract_BFE0806ED7C168590EFBA6E296F77FA7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_BFE0806ED7C168590EFBA6E296F77FA7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_BFE0806ED7C168590EFBA6E296F77FA7" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract_BFE0806ED7C168590EFBA6E296F77FA7" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">ASSETS</link:label>
    <link:label id="lab_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F_label_en-US" xlink:label="lab_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:to="lab_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current assets:</link:label>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B_label_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets, Current [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:to="lab_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_6F3EAE1F01DC11AF9ACDA6E296F8AEAA_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_6F3EAE1F01DC11AF9ACDA6E296F8AEAA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_6F3EAE1F01DC11AF9ACDA6E296F8AEAA_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_6F3EAE1F01DC11AF9ACDA6E296F8AEAA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_6F3EAE1F01DC11AF9ACDA6E296F8AEAA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_6F3EAE1F01DC11AF9ACDA6E296F8AEAA" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_6F3EAE1F01DC11AF9ACDA6E296F8AEAA" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_534B626875FC159E2E75A6E296F83B27_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_534B626875FC159E2E75A6E296F83B27" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Short-term investments</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_534B626875FC159E2E75A6E296F83B27_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_534B626875FC159E2E75A6E296F83B27" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Debt Securities, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_534B626875FC159E2E75A6E296F83B27" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_534B626875FC159E2E75A6E296F83B27" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_534B626875FC159E2E75A6E296F83B27" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_3465F7C6F8CC81AA9A7EA6E296F81044_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent_3465F7C6F8CC81AA9A7EA6E296F81044" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable, less reserves of $1,508 and $1,568 in 2018 and 2017, respectively</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_3465F7C6F8CC81AA9A7EA6E296F81044_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent_3465F7C6F8CC81AA9A7EA6E296F81044" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Net, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_3465F7C6F8CC81AA9A7EA6E296F81044" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent_3465F7C6F8CC81AA9A7EA6E296F81044" xlink:to="lab_us-gaap_AccountsReceivableNetCurrent_3465F7C6F8CC81AA9A7EA6E296F81044" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnbilledReceivablesCurrent_D3FC9DC82C8F2FBDAC2CA6E296F8A770_terseLabel_en-US" xlink:label="lab_us-gaap_UnbilledReceivablesCurrent_D3FC9DC82C8F2FBDAC2CA6E296F8A770" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unbilled revenue</link:label>
    <link:label id="lab_us-gaap_UnbilledReceivablesCurrent_D3FC9DC82C8F2FBDAC2CA6E296F8A770_label_en-US" xlink:label="lab_us-gaap_UnbilledReceivablesCurrent_D3FC9DC82C8F2FBDAC2CA6E296F8A770" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unbilled Receivables, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="loc_us-gaap_UnbilledReceivablesCurrent_D3FC9DC82C8F2FBDAC2CA6E296F8A770" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnbilledReceivablesCurrent_D3FC9DC82C8F2FBDAC2CA6E296F8A770" xlink:to="lab_us-gaap_UnbilledReceivablesCurrent_D3FC9DC82C8F2FBDAC2CA6E296F8A770" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryNet_C6353EEC8664DA6F01F6A6E296F8B31D_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryNet_C6353EEC8664DA6F01F6A6E296F8B31D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_C6353EEC8664DA6F01F6A6E296F8B31D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet_C6353EEC8664DA6F01F6A6E296F8B31D" xlink:to="lab_us-gaap_InventoryNet_C6353EEC8664DA6F01F6A6E296F8B31D" xlink:type="arc" />
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_7515053EC8BD9B909D88A6E296F9F47E_terseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_7515053EC8BD9B909D88A6E296F9F47E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_7515053EC8BD9B909D88A6E296F9F47E_label_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_7515053EC8BD9B909D88A6E296F9F47E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prepaid Expense and Other Assets, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_7515053EC8BD9B909D88A6E296F9F47E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_7515053EC8BD9B909D88A6E296F9F47E" xlink:to="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_7515053EC8BD9B909D88A6E296F9F47E" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsCurrent_EBD123BB736687AD0AB4A6E296F97BB5_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrent_EBD123BB736687AD0AB4A6E296F97BB5" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current assets</link:label>
    <link:label id="lab_us-gaap_AssetsCurrent_EBD123BB736687AD0AB4A6E296F97BB5_label_en-US" xlink:label="lab_us-gaap_AssetsCurrent_EBD123BB736687AD0AB4A6E296F97BB5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent_EBD123BB736687AD0AB4A6E296F97BB5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent_EBD123BB736687AD0AB4A6E296F97BB5" xlink:to="lab_us-gaap_AssetsCurrent_EBD123BB736687AD0AB4A6E296F97BB5" xlink:type="arc" />
    <link:label id="lab_us-gaap_LongTermInvestments_AF3277EB96F723CC7FECA6E296F9FC0F_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermInvestments_AF3277EB96F723CC7FECA6E296F9FC0F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term investments</link:label>
    <link:label id="lab_us-gaap_LongTermInvestments_AF3277EB96F723CC7FECA6E296F9FC0F_label_en-US" xlink:label="lab_us-gaap_LongTermInvestments_AF3277EB96F723CC7FECA6E296F9FC0F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-term Investments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LongTermInvestments" xlink:label="loc_us-gaap_LongTermInvestments_AF3277EB96F723CC7FECA6E296F9FC0F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermInvestments_AF3277EB96F723CC7FECA6E296F9FC0F" xlink:to="lab_us-gaap_LongTermInvestments_AF3277EB96F723CC7FECA6E296F9FC0F" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_107D0F042BA48135299EA6E296F95A87_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet_107D0F042BA48135299EA6E296F95A87" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property, plant, and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_107D0F042BA48135299EA6E296F95A87_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet_107D0F042BA48135299EA6E296F95A87" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_107D0F042BA48135299EA6E296F95A87" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_107D0F042BA48135299EA6E296F95A87" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet_107D0F042BA48135299EA6E296F95A87" xlink:type="arc" />
    <link:label id="lab_us-gaap_Goodwill_7E50F9964DD3AE2AFE2BA6E296F9A6C4_terseLabel_en-US" xlink:label="lab_us-gaap_Goodwill_7E50F9964DD3AE2AFE2BA6E296F9A6C4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_Goodwill_7E50F9964DD3AE2AFE2BA6E296F9A6C4_label_en-US" xlink:label="lab_us-gaap_Goodwill_7E50F9964DD3AE2AFE2BA6E296F9A6C4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_7E50F9964DD3AE2AFE2BA6E296F9A6C4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill_7E50F9964DD3AE2AFE2BA6E296F9A6C4" xlink:to="lab_us-gaap_Goodwill_7E50F9964DD3AE2AFE2BA6E296F9A6C4" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_3ACB2A6E761BEC9BCFA1A6E296F94100_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet_3ACB2A6E761BEC9BCFA1A6E296F94100" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Intangible assets, net</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_3ACB2A6E761BEC9BCFA1A6E296F94100_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet_3ACB2A6E761BEC9BCFA1A6E296F94100" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3ACB2A6E761BEC9BCFA1A6E296F94100" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3ACB2A6E761BEC9BCFA1A6E296F94100" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNet_3ACB2A6E761BEC9BCFA1A6E296F94100" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsNetNoncurrent_90A9C586558DD73D4D7DA6E296FA960A_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNetNoncurrent_90A9C586558DD73D4D7DA6E296FA960A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNetNoncurrent_90A9C586558DD73D4D7DA6E296FA960A_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNetNoncurrent_90A9C586558DD73D4D7DA6E296FA960A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Net of Valuation Allowance, Noncurrent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredTaxAssetsNetNoncurrent" xlink:label="loc_us-gaap_DeferredTaxAssetsNetNoncurrent_90A9C586558DD73D4D7DA6E296FA960A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsNetNoncurrent_90A9C586558DD73D4D7DA6E296FA960A" xlink:to="lab_us-gaap_DeferredTaxAssetsNetNoncurrent_90A9C586558DD73D4D7DA6E296FA960A" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_DE5F5EB5428869AF12FEA6E296FAD39F_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent_DE5F5EB5428869AF12FEA6E296FAD39F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_DE5F5EB5428869AF12FEA6E296FAD39F_label_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent_DE5F5EB5428869AF12FEA6E296FAD39F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Assets, Noncurrent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_DE5F5EB5428869AF12FEA6E296FAD39F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrent_DE5F5EB5428869AF12FEA6E296FAD39F" xlink:to="lab_us-gaap_OtherAssetsNoncurrent_DE5F5EB5428869AF12FEA6E296FAD39F" xlink:type="arc" />
    <link:label id="lab_us-gaap_Assets_8CBEC18A582682281D33A6E296FA06C4_totalLabel_en-US" xlink:label="lab_us-gaap_Assets_8CBEC18A582682281D33A6E296FA06C4" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_8CBEC18A582682281D33A6E296FA06C4_label_en-US" xlink:label="lab_us-gaap_Assets_8CBEC18A582682281D33A6E296FA06C4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_8CBEC18A582682281D33A6E296FA06C4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets_8CBEC18A582682281D33A6E296FA06C4" xlink:to="lab_us-gaap_Assets_8CBEC18A582682281D33A6E296FA06C4" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">LIABILITIES AND SHAREHOLDERS&#8217; EQUITY</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities and Equity [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsPayableCurrent_61E7C0944928792B5D47A6E296FB75A5_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent_61E7C0944928792B5D47A6E296FB75A5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_61E7C0944928792B5D47A6E296FB75A5_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent_61E7C0944928792B5D47A6E296FB75A5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent_61E7C0944928792B5D47A6E296FB75A5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrent_61E7C0944928792B5D47A6E296FB75A5" xlink:to="lab_us-gaap_AccountsPayableCurrent_61E7C0944928792B5D47A6E296FB75A5" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_A0B2D62D1E4450FCCE81A6E296FB1897_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent_A0B2D62D1E4450FCCE81A6E296FB1897" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued expenses</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_A0B2D62D1E4450FCCE81A6E296FB1897_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent_A0B2D62D1E4450FCCE81A6E296FB1897" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Liabilities, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_A0B2D62D1E4450FCCE81A6E296FB1897" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_A0B2D62D1E4450FCCE81A6E296FB1897" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrent_A0B2D62D1E4450FCCE81A6E296FB1897" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccruedIncomeTaxesCurrent_461E333C34EFB9ABADCDA6E296FB9CA8_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent_461E333C34EFB9ABADCDA6E296FB9CA8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued income taxes</link:label>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesCurrent_461E333C34EFB9ABADCDA6E296FB9CA8_label_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent_461E333C34EFB9ABADCDA6E296FB9CA8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Income Taxes, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_461E333C34EFB9ABADCDA6E296FB9CA8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedIncomeTaxesCurrent_461E333C34EFB9ABADCDA6E296FB9CA8" xlink:to="lab_us-gaap_AccruedIncomeTaxesCurrent_461E333C34EFB9ABADCDA6E296FB9CA8" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredRevenueAndCreditsCurrent_55D4F9EBF5637F0B1FE7A6E296FB0664_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenueAndCreditsCurrent_55D4F9EBF5637F0B1FE7A6E296FB0664" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue and customer deposits</link:label>
    <link:label id="lab_us-gaap_DeferredRevenueAndCreditsCurrent_55D4F9EBF5637F0B1FE7A6E296FB0664_label_en-US" xlink:label="lab_us-gaap_DeferredRevenueAndCreditsCurrent_55D4F9EBF5637F0B1FE7A6E296FB0664" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue and Credits, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenueAndCreditsCurrent" xlink:label="loc_us-gaap_DeferredRevenueAndCreditsCurrent_55D4F9EBF5637F0B1FE7A6E296FB0664" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueAndCreditsCurrent_55D4F9EBF5637F0B1FE7A6E296FB0664" xlink:to="lab_us-gaap_DeferredRevenueAndCreditsCurrent_55D4F9EBF5637F0B1FE7A6E296FB0664" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesCurrent_F7CCA5B47D1BBEA4AD52A6E296FB62DF_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent_F7CCA5B47D1BBEA4AD52A6E296FB62DF" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_F7CCA5B47D1BBEA4AD52A6E296FB62DF_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent_F7CCA5B47D1BBEA4AD52A6E296FB62DF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent_F7CCA5B47D1BBEA4AD52A6E296FB62DF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent_F7CCA5B47D1BBEA4AD52A6E296FB62DF" xlink:to="lab_us-gaap_LiabilitiesCurrent_F7CCA5B47D1BBEA4AD52A6E296FB62DF" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_EC7A2E3B41B804A8639AA6E296FCF16D_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_EC7A2E3B41B804A8639AA6E296FCF16D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_EC7A2E3B41B804A8639AA6E296FCF16D_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_EC7A2E3B41B804A8639AA6E296FCF16D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Liabilities, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_EC7A2E3B41B804A8639AA6E296FCF16D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_EC7A2E3B41B804A8639AA6E296FCF16D" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_EC7A2E3B41B804A8639AA6E296FCF16D" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_DE05932B91DE4C2573C1A6E296FC1956_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_DE05932B91DE4C2573C1A6E296FC1956" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reserve for income taxes</link:label>
    <link:label id="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_DE05932B91DE4C2573C1A6E296FC1956_label_en-US" xlink:label="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_DE05932B91DE4C2573C1A6E296FC1956" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liability for Uncertainty in Income Taxes, Noncurrent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:label="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_DE05932B91DE4C2573C1A6E296FC1956" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_DE05932B91DE4C2573C1A6E296FC1956" xlink:to="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_DE05932B91DE4C2573C1A6E296FC1956" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccruedIncomeTaxes_70316BC1A48D85762ECCA6E296FC9BC9_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxes_70316BC1A48D85762ECCA6E296FC9BC9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued income taxes</link:label>
    <link:label id="lab_us-gaap_AccruedIncomeTaxes_70316BC1A48D85762ECCA6E296FC9BC9_label_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxes_70316BC1A48D85762ECCA6E296FC9BC9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Income Taxes</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedIncomeTaxes" xlink:label="loc_us-gaap_AccruedIncomeTaxes_70316BC1A48D85762ECCA6E296FC9BC9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedIncomeTaxes_70316BC1A48D85762ECCA6E296FC9BC9" xlink:to="lab_us-gaap_AccruedIncomeTaxes_70316BC1A48D85762ECCA6E296FC9BC9" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_2EB3521504397216FEEBA6E296FCD7A8_terseLabel_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent_2EB3521504397216FEEBA6E296FCD7A8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other non-current liabilities</link:label>
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_2EB3521504397216FEEBA6E296FCD7A8_label_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent_2EB3521504397216FEEBA6E296FCD7A8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Liabilities, Noncurrent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_2EB3521504397216FEEBA6E296FCD7A8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherLiabilitiesNoncurrent_2EB3521504397216FEEBA6E296FCD7A8" xlink:to="lab_us-gaap_OtherLiabilitiesNoncurrent_2EB3521504397216FEEBA6E296FCD7A8" xlink:type="arc" />
    <link:label id="lab_us-gaap_Liabilities_9D54558F03D78CB54AE3A6E296FC62E9_totalLabel_en-US" xlink:label="lab_us-gaap_Liabilities_9D54558F03D78CB54AE3A6E296FC62E9" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities</link:label>
    <link:label id="lab_us-gaap_Liabilities_9D54558F03D78CB54AE3A6E296FC62E9_label_en-US" xlink:label="lab_us-gaap_Liabilities_9D54558F03D78CB54AE3A6E296FC62E9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities_9D54558F03D78CB54AE3A6E296FC62E9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Liabilities_9D54558F03D78CB54AE3A6E296FC62E9" xlink:to="lab_us-gaap_Liabilities_9D54558F03D78CB54AE3A6E296FC62E9" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shareholders&#8217; equity:</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stockholders' Equity Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4" xlink:to="lab_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockValueOutstanding_8EB104ACC331179465CEA6E296FD9952_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValueOutstanding_8EB104ACC331179465CEA6E296FD9952" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, $.002 par value &#8211; Authorized: 300,000 and 200,000 shares in 2018 and 2017, respectively, issued and outstanding: 172,191 and 173,507 shares in 2018 and 2017, respectively</link:label>
    <link:label id="lab_us-gaap_CommonStockValueOutstanding_8EB104ACC331179465CEA6E296FD9952_label_en-US" xlink:label="lab_us-gaap_CommonStockValueOutstanding_8EB104ACC331179465CEA6E296FD9952" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Value, Outstanding</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockValueOutstanding" xlink:label="loc_us-gaap_CommonStockValueOutstanding_8EB104ACC331179465CEA6E296FD9952" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValueOutstanding_8EB104ACC331179465CEA6E296FD9952" xlink:to="lab_us-gaap_CommonStockValueOutstanding_8EB104ACC331179465CEA6E296FD9952" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_F189B445704C6BA3F77BA6E296FD4456_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock_F189B445704C6BA3F77BA6E296FD4456" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_F189B445704C6BA3F77BA6E296FD4456_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock_F189B445704C6BA3F77BA6E296FD4456" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional Paid in Capital, Common Stock</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_F189B445704C6BA3F77BA6E296FD4456" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalCommonStock_F189B445704C6BA3F77BA6E296FD4456" xlink:to="lab_us-gaap_AdditionalPaidInCapitalCommonStock_F189B445704C6BA3F77BA6E296FD4456" xlink:type="arc" />
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_D5322AA52F17E1DC5E5DA6E296FDAEE1_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit_D5322AA52F17E1DC5E5DA6E296FDAEE1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Retained earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_D5322AA52F17E1DC5E5DA6E296FDAEE1_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit_D5322AA52F17E1DC5E5DA6E296FDAEE1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_D5322AA52F17E1DC5E5DA6E296FDAEE1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit_D5322AA52F17E1DC5E5DA6E296FDAEE1" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit_D5322AA52F17E1DC5E5DA6E296FDAEE1" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_212B3FB7500D3DE8BB10A6E296FDD343_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_212B3FB7500D3DE8BB10A6E296FDD343" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accumulated other comprehensive loss, net of tax</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_212B3FB7500D3DE8BB10A6E296FDD343_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_212B3FB7500D3DE8BB10A6E296FDD343" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_212B3FB7500D3DE8BB10A6E296FDD343" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_212B3FB7500D3DE8BB10A6E296FDD343" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_212B3FB7500D3DE8BB10A6E296FDD343" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquity_CC3525BDC206472E91D3A6E296FDF86F_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity_CC3525BDC206472E91D3A6E296FDF86F" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total shareholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_CC3525BDC206472E91D3A6E296FDF86F_label_en-US" xlink:label="lab_us-gaap_StockholdersEquity_CC3525BDC206472E91D3A6E296FDF86F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stockholders' Equity Attributable to Parent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_CC3525BDC206472E91D3A6E296FDF86F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity_CC3525BDC206472E91D3A6E296FDF86F" xlink:to="lab_us-gaap_StockholdersEquity_CC3525BDC206472E91D3A6E296FDF86F" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_A6D6F4CA8652301F5ECBA6E296FEF873_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity_A6D6F4CA8652301F5ECBA6E296FEF873" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities and shareholders' equity</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_A6D6F4CA8652301F5ECBA6E296FEF873_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity_A6D6F4CA8652301F5ECBA6E296FEF873" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities and Equity</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_A6D6F4CA8652301F5ECBA6E296FEF873" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_A6D6F4CA8652301F5ECBA6E296FEF873" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity_A6D6F4CA8652301F5ECBA6E296FEF873" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_040D967203B4AE79223F94A14FF95F0D_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_0C7304572B1052BD8C072ED864A97627" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reconciliation of United States Federal Statutory Corporate Tax Rate to Company's Effective Tax Rate, or Income Tax Provision</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_040D967203B4AE79223F94A14FF95F0D_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_0C7304572B1052BD8C072ED864A97627" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_0C7304572B1052BD8C072ED864A97627" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_0C7304572B1052BD8C072ED864A97627" xlink:to="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_0C7304572B1052BD8C072ED864A97627" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Table]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Line Items]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeNumberOfInstrumentsHeld_E3039CB4C386343509C1A6E296324266_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeNumberOfInstrumentsHeld_E3039CB4C386343509C1A6E296324266" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of instruments held</link:label>
    <link:label id="lab_us-gaap_DerivativeNumberOfInstrumentsHeld_E3039CB4C386343509C1A6E296324266_label_en-US" xlink:label="lab_us-gaap_DerivativeNumberOfInstrumentsHeld_E3039CB4C386343509C1A6E296324266" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative, Number of Instruments Held</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:label="loc_us-gaap_DerivativeNumberOfInstrumentsHeld_E3039CB4C386343509C1A6E296324266" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeNumberOfInstrumentsHeld_E3039CB4C386343509C1A6E296324266" xlink:to="lab_us-gaap_DerivativeNumberOfInstrumentsHeld_E3039CB4C386343509C1A6E296324266" xlink:type="arc" />
    <link:label id="lab_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_EFDB9EFCB0763633F24DA6E296324679_terseLabel_en-US" xlink:label="lab_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_EFDB9EFCB0763633F24DA6E296324679" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Remaining maturity of foreign currency derivatives (up to)</link:label>
    <link:label id="lab_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_EFDB9EFCB0763633F24DA6E296324679_label_en-US" xlink:label="lab_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_EFDB9EFCB0763633F24DA6E296324679" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maximum Remaining Maturity of Foreign Currency Derivatives</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1" xlink:label="loc_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_EFDB9EFCB0763633F24DA6E296324679" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_EFDB9EFCB0763633F24DA6E296324679" xlink:to="lab_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_EFDB9EFCB0763633F24DA6E296324679" xlink:type="arc" />
    <link:label id="lab_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1_68763F6CD3E7AFB70E40A6E296323F54_terseLabel_en-US" xlink:label="lab_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1_68763F6CD3E7AFB70E40A6E296323F54" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum length of time hedged in cash flow hedge</link:label>
    <link:label id="lab_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1_68763F6CD3E7AFB70E40A6E296323F54_label_en-US" xlink:label="lab_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1_68763F6CD3E7AFB70E40A6E296323F54" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maximum Length of Time Hedged in Cash Flow Hedge</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1" xlink:label="loc_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1_68763F6CD3E7AFB70E40A6E296323F54" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1_68763F6CD3E7AFB70E40A6E296323F54" xlink:to="lab_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1_68763F6CD3E7AFB70E40A6E296323F54" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45_label_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_A9BE7A329696F012C62BA6E296DCECAC_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_A9BE7A329696F012C62BA6E296DCECAC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash flows from operating activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_A9BE7A329696F012C62BA6E296DCECAC_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_A9BE7A329696F012C62BA6E296DCECAC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_A9BE7A329696F012C62BA6E296DCECAC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_A9BE7A329696F012C62BA6E296DCECAC" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_A9BE7A329696F012C62BA6E296DCECAC" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by operating activities:</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockOptionPlanExpense_BDEA5B65617C3501E0C4A6E296DD0762_terseLabel_en-US" xlink:label="lab_us-gaap_StockOptionPlanExpense_BDEA5B65617C3501E0C4A6E296DD0762" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock-based compensation expense</link:label>
    <link:label id="lab_us-gaap_StockOptionPlanExpense_BDEA5B65617C3501E0C4A6E296DD0762_label_en-US" xlink:label="lab_us-gaap_StockOptionPlanExpense_BDEA5B65617C3501E0C4A6E296DD0762" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock or Unit Option Plan Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockOptionPlanExpense" xlink:label="loc_us-gaap_StockOptionPlanExpense_BDEA5B65617C3501E0C4A6E296DD0762" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockOptionPlanExpense_BDEA5B65617C3501E0C4A6E296DD0762" xlink:to="lab_us-gaap_StockOptionPlanExpense_BDEA5B65617C3501E0C4A6E296DD0762" xlink:type="arc" />
    <link:label id="lab_us-gaap_Depreciation_A886256C8B5DA83D85C7A6E296DD656D_terseLabel_en-US" xlink:label="lab_us-gaap_Depreciation_A886256C8B5DA83D85C7A6E296DD656D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Depreciation of property, plant, and equipment</link:label>
    <link:label id="lab_us-gaap_Depreciation_A886256C8B5DA83D85C7A6E296DD656D_label_en-US" xlink:label="lab_us-gaap_Depreciation_A886256C8B5DA83D85C7A6E296DD656D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_A886256C8B5DA83D85C7A6E296DD656D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Depreciation_A886256C8B5DA83D85C7A6E296DD656D" xlink:to="lab_us-gaap_Depreciation_A886256C8B5DA83D85C7A6E296DD656D" xlink:type="arc" />
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_5BB0F16144BBED32CF17A6E296DDA5E3_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets_5BB0F16144BBED32CF17A6E296DDA5E3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization of intangible assets</link:label>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_5BB0F16144BBED32CF17A6E296DDA5E3_label_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets_5BB0F16144BBED32CF17A6E296DDA5E3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amortization of Intangible Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_5BB0F16144BBED32CF17A6E296DDA5E3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfIntangibleAssets_5BB0F16144BBED32CF17A6E296DDA5E3" xlink:to="lab_us-gaap_AmortizationOfIntangibleAssets_5BB0F16144BBED32CF17A6E296DDA5E3" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_94AC66F24A245731CCF8A6E296DD83B4_negatedLabel_en-US" xlink:label="lab_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_94AC66F24A245731CCF8A6E296DD83B4" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Amortization of discounts or premiums on investments</link:label>
    <link:label id="lab_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_94AC66F24A245731CCF8A6E296DD83B4_label_en-US" xlink:label="lab_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_94AC66F24A245731CCF8A6E296DD83B4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accretion (Amortization) of Discounts and Premiums, Investments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments" xlink:label="loc_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_94AC66F24A245731CCF8A6E296DD83B4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_94AC66F24A245731CCF8A6E296DD83B4" xlink:to="lab_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_94AC66F24A245731CCF8A6E296DD83B4" xlink:type="arc" />
    <link:label id="lab_us-gaap_GainLossOnSaleOfInvestments_E8918F9F5CE8ABDDBC54A6E296DEF547_negatedLabel_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfInvestments_E8918F9F5CE8ABDDBC54A6E296DEF547" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Realized (gain) loss on sale of investments</link:label>
    <link:label id="lab_us-gaap_GainLossOnSaleOfInvestments_E8918F9F5CE8ABDDBC54A6E296DEF547_label_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfInvestments_E8918F9F5CE8ABDDBC54A6E296DEF547" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gain (Loss) on Sale of Investments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossOnSaleOfInvestments" xlink:label="loc_us-gaap_GainLossOnSaleOfInvestments_E8918F9F5CE8ABDDBC54A6E296DEF547" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnSaleOfInvestments_E8918F9F5CE8ABDDBC54A6E296DEF547" xlink:to="lab_us-gaap_GainLossOnSaleOfInvestments_E8918F9F5CE8ABDDBC54A6E296DEF547" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_E90640788CE365EF4694A6E296DE9FCF_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_E90640788CE365EF4694A6E296DE9FCF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revaluation of contingent consideration</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_E90640788CE365EF4694A6E296DE9FCF_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_E90640788CE365EF4694A6E296DE9FCF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_E90640788CE365EF4694A6E296DE9FCF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_E90640788CE365EF4694A6E296DE9FCF" xlink:to="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_E90640788CE365EF4694A6E296DE9FCF" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_1F655E79B655E90E51DFA6E296DE8B16_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_1F655E79B655E90E51DFA6E296DE8B16" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Change in deferred income taxes</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_1F655E79B655E90E51DFA6E296DE8B16_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_1F655E79B655E90E51DFA6E296DE8B16" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Deferred Income Taxes</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_1F655E79B655E90E51DFA6E296DE8B16" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_1F655E79B655E90E51DFA6E296DE8B16" xlink:to="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_1F655E79B655E90E51DFA6E296DE8B16" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_62E5EC0EE6C79421280DA6E296DE6FD1_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_62E5EC0EE6C79421280DA6E296DE6FD1" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_62E5EC0EE6C79421280DA6E296DE6FD1_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_62E5EC0EE6C79421280DA6E296DE6FD1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_62E5EC0EE6C79421280DA6E296DE6FD1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_62E5EC0EE6C79421280DA6E296DE6FD1" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_62E5EC0EE6C79421280DA6E296DE6FD1" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInUnbilledReceivables_C343BE6F5E017B6C0C6BA6E296DE18D0_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInUnbilledReceivables_C343BE6F5E017B6C0C6BA6E296DE18D0" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Unbilled revenue</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInUnbilledReceivables_C343BE6F5E017B6C0C6BA6E296DE18D0_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInUnbilledReceivables_C343BE6F5E017B6C0C6BA6E296DE18D0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Unbilled Receivables</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInUnbilledReceivables" xlink:label="loc_us-gaap_IncreaseDecreaseInUnbilledReceivables_C343BE6F5E017B6C0C6BA6E296DE18D0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInUnbilledReceivables_C343BE6F5E017B6C0C6BA6E296DE18D0" xlink:to="lab_us-gaap_IncreaseDecreaseInUnbilledReceivables_C343BE6F5E017B6C0C6BA6E296DE18D0" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_130D53B72B14C983935AA6E296DF6D26_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories_130D53B72B14C983935AA6E296DF6D26" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_130D53B72B14C983935AA6E296DF6D26_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories_130D53B72B14C983935AA6E296DF6D26" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Inventories</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_130D53B72B14C983935AA6E296DF6D26" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInInventories_130D53B72B14C983935AA6E296DF6D26" xlink:to="lab_us-gaap_IncreaseDecreaseInInventories_130D53B72B14C983935AA6E296DF6D26" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_EFA7278C9DD73834B7AFA6E296DFFAC9_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_EFA7278C9DD73834B7AFA6E296DFFAC9" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_EFA7278C9DD73834B7AFA6E296DFFAC9_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_EFA7278C9DD73834B7AFA6E296DFFAC9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_EFA7278C9DD73834B7AFA6E296DFFAC9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_EFA7278C9DD73834B7AFA6E296DFFAC9" xlink:to="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_EFA7278C9DD73834B7AFA6E296DFFAC9" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_C3F1FA018AEBD9143C68A6E296DF76D5_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable_C3F1FA018AEBD9143C68A6E296DF76D5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_C3F1FA018AEBD9143C68A6E296DF76D5_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable_C3F1FA018AEBD9143C68A6E296DF76D5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accounts Payable</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_C3F1FA018AEBD9143C68A6E296DF76D5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayable_C3F1FA018AEBD9143C68A6E296DF76D5" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayable_C3F1FA018AEBD9143C68A6E296DF76D5" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_B69F5A4AFEAC7B2A8599A6E296DF1A06_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_B69F5A4AFEAC7B2A8599A6E296DF1A06" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued expenses</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_B69F5A4AFEAC7B2A8599A6E296DF1A06_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_B69F5A4AFEAC7B2A8599A6E296DF1A06" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accrued Liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_B69F5A4AFEAC7B2A8599A6E296DF1A06" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_B69F5A4AFEAC7B2A8599A6E296DF1A06" xlink:to="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_B69F5A4AFEAC7B2A8599A6E296DF1A06" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_C1730E873E835690B71EA6E296DFDCEC_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_C1730E873E835690B71EA6E296DFDCEC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued income taxes</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_C1730E873E835690B71EA6E296DFDCEC_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_C1730E873E835690B71EA6E296DFDCEC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accrued Taxes Payable</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_C1730E873E835690B71EA6E296DFDCEC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_C1730E873E835690B71EA6E296DFDCEC" xlink:to="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_C1730E873E835690B71EA6E296DFDCEC" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_7C1322F40B366ABB439CA6E296DFA237_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_7C1322F40B366ABB439CA6E296DFA237" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue and customer deposits</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_7C1322F40B366ABB439CA6E296DFA237_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_7C1322F40B366ABB439CA6E296DFA237" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Deferred Revenue</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_7C1322F40B366ABB439CA6E296DFA237" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_7C1322F40B366ABB439CA6E296DFA237" xlink:to="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_7C1322F40B366ABB439CA6E296DFA237" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_10F8B6CCC8F121BFC361A6E296E040EC_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_10F8B6CCC8F121BFC361A6E296E040EC" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_10F8B6CCC8F121BFC361A6E296E040EC_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_10F8B6CCC8F121BFC361A6E296E040EC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Other Operating Assets and Liabilities, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_10F8B6CCC8F121BFC361A6E296E040EC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_10F8B6CCC8F121BFC361A6E296E040EC" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_10F8B6CCC8F121BFC361A6E296E040EC" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_3194ECBFAE00780B55CEA6E296E008FC_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_3194ECBFAE00780B55CEA6E296E008FC" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by operating activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_3194ECBFAE00780B55CEA6E296E008FC_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_3194ECBFAE00780B55CEA6E296E008FC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3194ECBFAE00780B55CEA6E296E008FC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3194ECBFAE00780B55CEA6E296E008FC" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_3194ECBFAE00780B55CEA6E296E008FC" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash flows from investing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquireInvestments_925E53DA89431AE6E0B3A6E296E0E973_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireInvestments_925E53DA89431AE6E0B3A6E296E0E973" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Purchases of investments</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireInvestments_925E53DA89431AE6E0B3A6E296E0E973_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireInvestments_925E53DA89431AE6E0B3A6E296E0E973" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Investments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="loc_us-gaap_PaymentsToAcquireInvestments_925E53DA89431AE6E0B3A6E296E0E973" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireInvestments_925E53DA89431AE6E0B3A6E296E0E973" xlink:to="lab_us-gaap_PaymentsToAcquireInvestments_925E53DA89431AE6E0B3A6E296E0E973" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_6FBB83ADA7C089E7E225A6E296E109F4_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_6FBB83ADA7C089E7E225A6E296E109F4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maturities and sales of investments</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_6FBB83ADA7C089E7E225A6E296E109F4_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_6FBB83ADA7C089E7E225A6E296E109F4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Sale, Maturity and Collection of Investments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:label="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_6FBB83ADA7C089E7E225A6E296E109F4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_6FBB83ADA7C089E7E225A6E296E109F4" xlink:to="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_6FBB83ADA7C089E7E225A6E296E109F4" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9E679E68220C7890CE81A6E296E1F1F5_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9E679E68220C7890CE81A6E296E1F1F5" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Purchases of property, plant, and equipment</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9E679E68220C7890CE81A6E296E1F1F5_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9E679E68220C7890CE81A6E296E1F1F5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9E679E68220C7890CE81A6E296E1F1F5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9E679E68220C7890CE81A6E296E1F1F5" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9E679E68220C7890CE81A6E296E1F1F5" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E4475D61174ABB29D9ADA6E296E1EDC2_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E4475D61174ABB29D9ADA6E296E1EDC2" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Cash paid for acquisition of business</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E4475D61174ABB29D9ADA6E296E1EDC2_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E4475D61174ABB29D9ADA6E296E1EDC2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Businesses, Net of Cash Acquired</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E4475D61174ABB29D9ADA6E296E1EDC2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E4475D61174ABB29D9ADA6E296E1EDC2" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E4475D61174ABB29D9ADA6E296E1EDC2" xlink:type="arc" />
    <link:label id="lab_cgnx_PaymentsForDivestitureofBusinesses_B21C7D1EFBB8852241F2A6E296E16F14_negatedLabel_en-US" xlink:label="lab_cgnx_PaymentsForDivestitureofBusinesses_B21C7D1EFBB8852241F2A6E296E16F14" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (used in) investing activities</link:label>
    <link:label id="lab_cgnx_PaymentsForDivestitureofBusinesses_B21C7D1EFBB8852241F2A6E296E16F14_label_en-US" xlink:label="lab_cgnx_PaymentsForDivestitureofBusinesses_B21C7D1EFBB8852241F2A6E296E16F14" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments For Divestiture of Businesses</link:label>
    <link:label id="lab_cgnx_PaymentsForDivestitureofBusinesses_B21C7D1EFBB8852241F2A6E296E16F14_documentation_en-US" xlink:label="lab_cgnx_PaymentsForDivestitureofBusinesses_B21C7D1EFBB8852241F2A6E296E16F14" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Payments For Divestiture of Businesses</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_PaymentsForDivestitureofBusinesses" xlink:label="loc_cgnx_PaymentsForDivestitureofBusinesses_B21C7D1EFBB8852241F2A6E296E16F14" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_PaymentsForDivestitureofBusinesses_B21C7D1EFBB8852241F2A6E296E16F14" xlink:to="lab_cgnx_PaymentsForDivestitureofBusinesses_B21C7D1EFBB8852241F2A6E296E16F14" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_BBEBE357485265C26A99A6E296E1212D_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_BBEBE357485265C26A99A6E296E1212D" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (used in) investing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_BBEBE357485265C26A99A6E296E1212D_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_BBEBE357485265C26A99A6E296E1212D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_BBEBE357485265C26A99A6E296E1212D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_BBEBE357485265C26A99A6E296E1212D" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_BBEBE357485265C26A99A6E296E1212D" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash flows from financing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_09B99F51D4B2C3FEAEEFA6E296E29EA7_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_09B99F51D4B2C3FEAEEFA6E296E29EA7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Issuance of common stock under stock plans</link:label>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_09B99F51D4B2C3FEAEEFA6E296E29EA7_label_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_09B99F51D4B2C3FEAEEFA6E296E29EA7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Issuance of Shares under Incentive and Share-based Compensation Plans, Including Stock Options</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_09B99F51D4B2C3FEAEEFA6E296E29EA7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_09B99F51D4B2C3FEAEEFA6E296E29EA7" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_09B99F51D4B2C3FEAEEFA6E296E29EA7" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_5DB349D449E4473C40E6A6E296E2A448_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_5DB349D449E4473C40E6A6E296E2A448" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Repurchase of common stock</link:label>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_5DB349D449E4473C40E6A6E296E2A448_label_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_5DB349D449E4473C40E6A6E296E2A448" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments for Repurchase of Common Stock</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_5DB349D449E4473C40E6A6E296E2A448" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_5DB349D449E4473C40E6A6E296E2A448" xlink:to="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_5DB349D449E4473C40E6A6E296E2A448" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsOfDividendsCommonStock_16AEB8B01CB736DC110BA6E296E214A7_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfDividendsCommonStock_16AEB8B01CB736DC110BA6E296E214A7" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Payment of dividends</link:label>
    <link:label id="lab_us-gaap_PaymentsOfDividendsCommonStock_16AEB8B01CB736DC110BA6E296E214A7_label_en-US" xlink:label="lab_us-gaap_PaymentsOfDividendsCommonStock_16AEB8B01CB736DC110BA6E296E214A7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments of Ordinary Dividends, Common Stock</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="loc_us-gaap_PaymentsOfDividendsCommonStock_16AEB8B01CB736DC110BA6E296E214A7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfDividendsCommonStock_16AEB8B01CB736DC110BA6E296E214A7" xlink:to="lab_us-gaap_PaymentsOfDividendsCommonStock_16AEB8B01CB736DC110BA6E296E214A7" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_B027AEFF4A23606B01A7A6E296E23590_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_B027AEFF4A23606B01A7A6E296E23590" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (used in) financing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_B027AEFF4A23606B01A7A6E296E23590_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_B027AEFF4A23606B01A7A6E296E23590" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_B027AEFF4A23606B01A7A6E296E23590" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_B027AEFF4A23606B01A7A6E296E23590" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_B027AEFF4A23606B01A7A6E296E23590" xlink:type="arc" />
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_D572E6388A86C504AE8CA6E296E35741_terseLabel_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_D572E6388A86C504AE8CA6E296E35741" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effect of foreign exchange rate changes on cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_D572E6388A86C504AE8CA6E296E35741_label_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_D572E6388A86C504AE8CA6E296E35741" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effect of Exchange Rate on Cash and Cash Equivalents</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_D572E6388A86C504AE8CA6E296E35741" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_D572E6388A86C504AE8CA6E296E35741" xlink:to="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_D572E6388A86C504AE8CA6E296E35741" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_135E2A51CB78C69BC56EA6E296E39F81_totalLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_135E2A51CB78C69BC56EA6E296E39F81" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net change in cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_135E2A51CB78C69BC56EA6E296E39F81_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_135E2A51CB78C69BC56EA6E296E39F81" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents, Period Increase (Decrease)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_135E2A51CB78C69BC56EA6E296E39F81" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_135E2A51CB78C69BC56EA6E296E39F81" xlink:to="lab_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_135E2A51CB78C69BC56EA6E296E39F81" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_671219F9F16F643CF875A6E296E36D25_periodStartLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_671219F9F16F643CF875A6E296E36D25" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents at beginning of period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_671219F9F16F643CF875A6E296E36D25" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_671219F9F16F643CF875A6E296E36D25" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_671219F9F16F643CF875A6E296E36D25" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_7C63F0CBE6FFD7B231CDA6E296E3FC5F_periodEndLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_7C63F0CBE6FFD7B231CDA6E296E3FC5F" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents at end of period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_7C63F0CBE6FFD7B231CDA6E296E3FC5F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_7C63F0CBE6FFD7B231CDA6E296E3FC5F" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_7C63F0CBE6FFD7B231CDA6E296E3FC5F" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_51B4E2C81B7AA0FEF78FB8D3FF30B1AF_label_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract_CA01A29EE6CD589D8E940CE764AC75C7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_CA01A29EE6CD589D8E940CE764AC75C7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CA01A29EE6CD589D8E940CE764AC75C7" xlink:to="lab_us-gaap_AccountingPoliciesAbstract_CA01A29EE6CD589D8E940CE764AC75C7" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueRecognitionPolicyTextBlock_E60B2FDB4FB371E7B6BAB8D41468B83B_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRecognitionPolicyTextBlock_D211010C2BEF5EB8BBC2B0DC37FCF809" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue Recognition</link:label>
    <link:label id="lab_us-gaap_RevenueRecognitionPolicyTextBlock_E60B2FDB4FB371E7B6BAB8D41468B83B_label_en-US" xlink:label="lab_us-gaap_RevenueRecognitionPolicyTextBlock_D211010C2BEF5EB8BBC2B0DC37FCF809" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue Recognition, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="loc_us-gaap_RevenueRecognitionPolicyTextBlock_D211010C2BEF5EB8BBC2B0DC37FCF809" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRecognitionPolicyTextBlock_D211010C2BEF5EB8BBC2B0DC37FCF809" xlink:to="lab_us-gaap_RevenueRecognitionPolicyTextBlock_D211010C2BEF5EB8BBC2B0DC37FCF809" xlink:type="arc" />
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_37FF9BF5455FF76D0464B8D4E24F92CA_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_5C5CAFEC5BDC5308923951D822B4F94E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">New Pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_37FF9BF5455FF76D0464B8D4E24F92CA_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_5C5CAFEC5BDC5308923951D822B4F94E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_5C5CAFEC5BDC5308923951D822B4F94E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_5C5CAFEC5BDC5308923951D822B4F94E" xlink:to="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_5C5CAFEC5BDC5308923951D822B4F94E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_F79AC4FBBECE01900DD3B895CE222767_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_AD471BCF4F0557A58B17CDF9C6392795" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_F79AC4FBBECE01900DD3B895CE222767_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_AD471BCF4F0557A58B17CDF9C6392795" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_AD471BCF4F0557A58B17CDF9C6392795" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_AD471BCF4F0557A58B17CDF9C6392795" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_AD471BCF4F0557A58B17CDF9C6392795" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_E3A338AD6F19EDE8701CB895CE230B21_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57CB7AD7C14B5434AE3512B653086E36" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_E3A338AD6F19EDE8701CB895CE230B21_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57CB7AD7C14B5434AE3512B653086E36" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57CB7AD7C14B5434AE3512B653086E36" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57CB7AD7C14B5434AE3512B653086E36" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57CB7AD7C14B5434AE3512B653086E36" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_D7AE2E3479A591C03F55B895CE23540D_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_D7AE2E3479A591C03F55B895CE23540D_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:type="arc" />
    <link:label id="lab_us-gaap_DistributionRightsMember_44136E766B8D79179AE0B895CE23894B_terseLabel_en-US" xlink:label="lab_us-gaap_DistributionRightsMember_4C88E126A1CD5CB785645FD509BB67F9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Distribution networks</link:label>
    <link:label id="lab_us-gaap_DistributionRightsMember_44136E766B8D79179AE0B895CE23894B_label_en-US" xlink:label="lab_us-gaap_DistributionRightsMember_4C88E126A1CD5CB785645FD509BB67F9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Distribution Rights [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DistributionRightsMember" xlink:label="loc_us-gaap_DistributionRightsMember_4C88E126A1CD5CB785645FD509BB67F9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DistributionRightsMember_4C88E126A1CD5CB785645FD509BB67F9" xlink:to="lab_us-gaap_DistributionRightsMember_4C88E126A1CD5CB785645FD509BB67F9" xlink:type="arc" />
    <link:label id="lab_us-gaap_DevelopedTechnologyRightsMember_0881C53A2B458005CC9CB895CE23101F_terseLabel_en-US" xlink:label="lab_us-gaap_DevelopedTechnologyRightsMember_48D9A251F5A35450A7C81678E22D3CB4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Completed technologies</link:label>
    <link:label id="lab_us-gaap_DevelopedTechnologyRightsMember_0881C53A2B458005CC9CB895CE23101F_label_en-US" xlink:label="lab_us-gaap_DevelopedTechnologyRightsMember_48D9A251F5A35450A7C81678E22D3CB4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Developed Technology Rights [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_48D9A251F5A35450A7C81678E22D3CB4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DevelopedTechnologyRightsMember_48D9A251F5A35450A7C81678E22D3CB4" xlink:to="lab_us-gaap_DevelopedTechnologyRightsMember_48D9A251F5A35450A7C81678E22D3CB4" xlink:type="arc" />
    <link:label id="lab_cgnx_CustomerContractsAndRelationshipsMember_1E9F3567316D6D0724F0B895CE24F367_terseLabel_en-US" xlink:label="lab_cgnx_CustomerContractsAndRelationshipsMember_4C6AD98833375E4CA1B263304FFFA1A6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Customer relationships</link:label>
    <link:label id="lab_cgnx_CustomerContractsAndRelationshipsMember_1E9F3567316D6D0724F0B895CE24F367_label_en-US" xlink:label="lab_cgnx_CustomerContractsAndRelationshipsMember_4C6AD98833375E4CA1B263304FFFA1A6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer Contracts And Relationships [Member]</link:label>
    <link:label id="lab_cgnx_CustomerContractsAndRelationshipsMember_1E9F3567316D6D0724F0B895CE24F367_documentation_en-US" xlink:label="lab_cgnx_CustomerContractsAndRelationshipsMember_4C6AD98833375E4CA1B263304FFFA1A6" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Customer Contracts And Relationships [Member]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_CustomerContractsAndRelationshipsMember" xlink:label="loc_cgnx_CustomerContractsAndRelationshipsMember_4C6AD98833375E4CA1B263304FFFA1A6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_CustomerContractsAndRelationshipsMember_4C6AD98833375E4CA1B263304FFFA1A6" xlink:to="lab_cgnx_CustomerContractsAndRelationshipsMember_4C6AD98833375E4CA1B263304FFFA1A6" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherIntangibleAssetsMember_0BD7837CBD8AD2489BE7B895CE24E43B_terseLabel_en-US" xlink:label="lab_us-gaap_OtherIntangibleAssetsMember_0F1E53DBE755543D94379542024ADA11" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-compete agreements</link:label>
    <link:label id="lab_us-gaap_OtherIntangibleAssetsMember_0BD7837CBD8AD2489BE7B895CE24E43B_label_en-US" xlink:label="lab_us-gaap_OtherIntangibleAssetsMember_0F1E53DBE755543D94379542024ADA11" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Intangible Assets [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherIntangibleAssetsMember" xlink:label="loc_us-gaap_OtherIntangibleAssetsMember_0F1E53DBE755543D94379542024ADA11" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherIntangibleAssetsMember_0F1E53DBE755543D94379542024ADA11" xlink:to="lab_us-gaap_OtherIntangibleAssetsMember_0F1E53DBE755543D94379542024ADA11" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_1103AB018EA5690ECFBCB895CE24354F_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_1103AB018EA5690ECFBCB895CE24354F_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_EBB8A473CC41C4CA59D1B895CE24BB7B_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross_5BB979F7034D57F8A7D76B498C542FD6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross Carrying Value</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_EBB8A473CC41C4CA59D1B895CE24BB7B_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross_5BB979F7034D57F8A7D76B498C542FD6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_5BB979F7034D57F8A7D76B498C542FD6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsGross_5BB979F7034D57F8A7D76B498C542FD6" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsGross_5BB979F7034D57F8A7D76B498C542FD6" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_5362584D98B62180EFBCB895CE241954_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_F1A416C48DAB5EC3B604B0936816016A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accumulated Amortization</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_5362584D98B62180EFBCB895CE241954_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_F1A416C48DAB5EC3B604B0936816016A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_F1A416C48DAB5EC3B604B0936816016A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_F1A416C48DAB5EC3B604B0936816016A" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_F1A416C48DAB5EC3B604B0936816016A" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_42870DE02C5353F6E18AB895CE253329_totalLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet_3A16109ED16A5CCF94C8D3E4ABDBCADD" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net Carrying Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3A16109ED16A5CCF94C8D3E4ABDBCADD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3A16109ED16A5CCF94C8D3E4ABDBCADD" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNet_3A16109ED16A5CCF94C8D3E4ABDBCADD" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_5955204B82A88A686C76B8CC0D326BAA_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_5955204B82A88A686C76B8CC0D326BAA_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_459AB15FD211CB401130B8C292206717_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_94E6726B270257E1BBDD15C873FFA13B" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Remainder of fiscal 2018</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_459AB15FD211CB401130B8C292206717_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_94E6726B270257E1BBDD15C873FFA13B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Remainder of Fiscal Year</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_94E6726B270257E1BBDD15C873FFA13B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_94E6726B270257E1BBDD15C873FFA13B" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_94E6726B270257E1BBDD15C873FFA13B" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_08D19164956E6945F218B8C292391FBD_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_E872696E647252C69AF62C395CB26280" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2019</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_08D19164956E6945F218B8C292391FBD_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_E872696E647252C69AF62C395CB26280" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_E872696E647252C69AF62C395CB26280" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_E872696E647252C69AF62C395CB26280" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_E872696E647252C69AF62C395CB26280" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_C9781AA965D588B3652FB8C292582C81_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_5BDF63115A6950F58818DBEFE6FC9263" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2020</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_C9781AA965D588B3652FB8C292582C81_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_5BDF63115A6950F58818DBEFE6FC9263" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Two</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_5BDF63115A6950F58818DBEFE6FC9263" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_5BDF63115A6950F58818DBEFE6FC9263" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_5BDF63115A6950F58818DBEFE6FC9263" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_7C13741B14F1D346126CB8C292708CC4_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_892F09C85977569FB02998CD8B3F937A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2021</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_7C13741B14F1D346126CB8C292708CC4_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_892F09C85977569FB02998CD8B3F937A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Three</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_892F09C85977569FB02998CD8B3F937A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_892F09C85977569FB02998CD8B3F937A" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_892F09C85977569FB02998CD8B3F937A" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_B55970C0D716721238D0B8C29288FE0E_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_5EA77F446D865BB3A6C8F801CE810575" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2022</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_B55970C0D716721238D0B8C29288FE0E_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_5EA77F446D865BB3A6C8F801CE810575" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Four</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_5EA77F446D865BB3A6C8F801CE810575" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_5EA77F446D865BB3A6C8F801CE810575" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_5EA77F446D865BB3A6C8F801CE810575" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_DACD9DD166F882089E34B8C292A1B022_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_3D25A02FCBA75E2FAD1A3739C8DF7F74" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_DACD9DD166F882089E34B8C292A1B022_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_3D25A02FCBA75E2FAD1A3739C8DF7F74" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Five</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_3D25A02FCBA75E2FAD1A3739C8DF7F74" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_3D25A02FCBA75E2FAD1A3739C8DF7F74" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_3D25A02FCBA75E2FAD1A3739C8DF7F74" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_822F25E5EB4843C9DE3BB8C292BD5912_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_3A66DDBEE76158C8B2533CECAE5935F9" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_822F25E5EB4843C9DE3BB8C292BD5912_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_3A66DDBEE76158C8B2533CECAE5935F9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, after Year Five</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_3A66DDBEE76158C8B2533CECAE5935F9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_3A66DDBEE76158C8B2533CECAE5935F9" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_3A66DDBEE76158C8B2533CECAE5935F9" xlink:type="arc" />
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_F3C70FFE3A2D0F1A7C98AD89DB694393_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_F3C70FFE3A2D0F1A7C98AD89DB694393" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income tax provision at federal statutory corporate tax rate</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_F3C70FFE3A2D0F1A7C98AD89DB694393_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_F3C70FFE3A2D0F1A7C98AD89DB694393" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_F3C70FFE3A2D0F1A7C98AD89DB694393" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_F3C70FFE3A2D0F1A7C98AD89DB694393" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_F3C70FFE3A2D0F1A7C98AD89DB694393" xlink:type="arc" />
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_6B20A7C36636C27167E7AD89DB6ADF05_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_6B20A7C36636C27167E7AD89DB6ADF05" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">State income taxes, net of federal benefit</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_6B20A7C36636C27167E7AD89DB6ADF05_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_6B20A7C36636C27167E7AD89DB6ADF05" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_6B20A7C36636C27167E7AD89DB6ADF05" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_6B20A7C36636C27167E7AD89DB6ADF05" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_6B20A7C36636C27167E7AD89DB6ADF05" xlink:type="arc" />
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_FDD272B698966A5A6F93AD89DB6A44F3_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_FDD272B698966A5A6F93AD89DB6A44F3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign tax rate differential</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_FDD272B698966A5A6F93AD89DB6A44F3_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_FDD272B698966A5A6F93AD89DB6A44F3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_FDD272B698966A5A6F93AD89DB6A44F3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_FDD272B698966A5A6F93AD89DB6A44F3" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_FDD272B698966A5A6F93AD89DB6A44F3" xlink:type="arc" />
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1C79F95A2C9F1BFE089AAD89DB6BFAE5_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1C79F95A2C9F1BFE089AAD89DB6BFAE5" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Tax credit</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1C79F95A2C9F1BFE089AAD89DB6BFAE5_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1C79F95A2C9F1BFE089AAD89DB6BFAE5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Credit, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1C79F95A2C9F1BFE089AAD89DB6BFAE5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1C79F95A2C9F1BFE089AAD89DB6BFAE5" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1C79F95A2C9F1BFE089AAD89DB6BFAE5" xlink:type="arc" />
    <link:label id="lab_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_B3F847E903E5D22AEB92AD89DB6CE665_terseLabel_en-US" xlink:label="lab_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_B3F847E903E5D22AEB92AD89DB6CE665" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Discrete tax benefit related to Tax Act 2017</link:label>
    <link:label id="lab_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_B3F847E903E5D22AEB92AD89DB6CE665_label_en-US" xlink:label="lab_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_B3F847E903E5D22AEB92AD89DB6CE665" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Act 2017</link:label>
    <link:label id="lab_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_B3F847E903E5D22AEB92AD89DB6CE665_documentation_en-US" xlink:label="lab_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_B3F847E903E5D22AEB92AD89DB6CE665" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Act 2017</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_B3F847E903E5D22AEB92AD89DB6CE665" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_B3F847E903E5D22AEB92AD89DB6CE665" xlink:to="lab_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_B3F847E903E5D22AEB92AD89DB6CE665" xlink:type="arc" />
    <link:label id="lab_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CF5667D421D88655D941AD89DB6CAC2C_negatedTerseLabel_en-US" xlink:label="lab_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CF5667D421D88655D941AD89DB6CAC2C" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Discrete tax benefit related to stock option exercises</link:label>
    <link:label id="lab_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CF5667D421D88655D941AD89DB6CAC2C_label_en-US" xlink:label="lab_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CF5667D421D88655D941AD89DB6CAC2C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Share-based Compensation, Excess Tax Benefit, Percent</link:label>
    <link:label id="lab_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CF5667D421D88655D941AD89DB6CAC2C_documentation_en-US" xlink:label="lab_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CF5667D421D88655D941AD89DB6CAC2C" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Share-based Compensation, Excess Tax Benefit, Percent</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CF5667D421D88655D941AD89DB6CAC2C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CF5667D421D88655D941AD89DB6CAC2C" xlink:to="lab_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CF5667D421D88655D941AD89DB6CAC2C" xlink:type="arc" />
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_5274CFBC2E292EFB7132AD89DB6C66E5_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_5274CFBC2E292EFB7132AD89DB6C66E5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other discrete tax events</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_5274CFBC2E292EFB7132AD89DB6C66E5_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_5274CFBC2E292EFB7132AD89DB6C66E5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Change in Enacted Tax Rate, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_5274CFBC2E292EFB7132AD89DB6C66E5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_5274CFBC2E292EFB7132AD89DB6C66E5" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_5274CFBC2E292EFB7132AD89DB6C66E5" xlink:type="arc" />
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_A4D9B830EC9CD8F173D7AD89DB6CF99C_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_A4D9B830EC9CD8F173D7AD89DB6CF99C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_A4D9B830EC9CD8F173D7AD89DB6CF99C_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_A4D9B830EC9CD8F173D7AD89DB6CF99C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Other Adjustments, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_A4D9B830EC9CD8F173D7AD89DB6CF99C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_A4D9B830EC9CD8F173D7AD89DB6CF99C" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_A4D9B830EC9CD8F173D7AD89DB6CF99C" xlink:type="arc" />
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_3DD93638B33EADD9D87CAD89DB6D2EC0_totalLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_3DD93638B33EADD9D87CAD89DB6D2EC0" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income tax provision</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_3DD93638B33EADD9D87CAD89DB6D2EC0_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_3DD93638B33EADD9D87CAD89DB6D2EC0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_3DD93638B33EADD9D87CAD89DB6D2EC0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_3DD93638B33EADD9D87CAD89DB6D2EC0" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_3DD93638B33EADD9D87CAD89DB6D2EC0" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_C7A8F15D357908723036B43FCCF4E70A_label_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract_3F42173A20CA54458949A0DA31E7A64C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_3F42173A20CA54458949A0DA31E7A64C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_3F42173A20CA54458949A0DA31E7A64C" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract_3F42173A20CA54458949A0DA31E7A64C" xlink:type="arc" />
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6_terseLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other comprehensive income (loss), net of tax:</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6" xlink:type="arc" />
    <link:label id="lab_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C_terseLabel_en-US" xlink:label="lab_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash flow hedges:</link:label>
    <link:label id="lab_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C_label_en-US" xlink:label="lab_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash flows hedges [Abstract]</link:label>
    <link:label id="lab_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C_documentation_en-US" xlink:label="lab_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Cash flows hedges [Abstract]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_CashflowshedgesAbstract" xlink:label="loc_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C" xlink:to="lab_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_96F41B7FF0BC3C028423A2DC9DCA2429_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_96F41B7FF0BC3C028423A2DC9DCA2429" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net unrealized gain (loss), net of tax of $0 and ($8) in the three-month periods and net of tax of $0 and ($5) in the nine-month periods, respectively</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_96F41B7FF0BC3C028423A2DC9DCA2429_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_96F41B7FF0BC3C028423A2DC9DCA2429" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Unrealized Gain (Loss) on Derivatives Arising During Period, Net of Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_96F41B7FF0BC3C028423A2DC9DCA2429" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_96F41B7FF0BC3C028423A2DC9DCA2429" xlink:to="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_96F41B7FF0BC3C028423A2DC9DCA2429" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_DAFF98E3086321EEA9EEA2DC9DCB2278_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_DAFF98E3086321EEA9EEA2DC9DCB2278" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Reclassification of net realized (gain) loss into current operations</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_DAFF98E3086321EEA9EEA2DC9DCB2278" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_DAFF98E3086321EEA9EEA2DC9DCB2278" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_DAFF98E3086321EEA9EEA2DC9DCB2278" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_99698055B3A1187702BDA2DC9DCB950F_totalLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_99698055B3A1187702BDA2DC9DCB950F" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net change related to cash flow hedges</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_99698055B3A1187702BDA2DC9DCB950F_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_99698055B3A1187702BDA2DC9DCB950F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Derivatives Qualifying as Hedges, Net of Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_99698055B3A1187702BDA2DC9DCB950F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_99698055B3A1187702BDA2DC9DCB950F" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_99698055B3A1187702BDA2DC9DCB950F" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_A707828520EBC422550DA2DC9DCB79FD_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_A707828520EBC422550DA2DC9DCB79FD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Available-for-sale investments:</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_A707828520EBC422550DA2DC9DCB79FD_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_A707828520EBC422550DA2DC9DCB79FD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_A707828520EBC422550DA2DC9DCB79FD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_A707828520EBC422550DA2DC9DCB79FD" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_A707828520EBC422550DA2DC9DCB79FD" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_CC3CF662F41C6891B4B3A2DC9DCBE0AF_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_CC3CF662F41C6891B4B3A2DC9DCBE0AF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net unrealized gain (loss), net of tax of $24 and $41 in the three-month periods and net of tax of ($82) and $191 in the nine-month periods, respectively</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_CC3CF662F41C6891B4B3A2DC9DCBE0AF_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_CC3CF662F41C6891B4B3A2DC9DCBE0AF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Unrealized Holding Gain (Loss) on Securities Arising During Period, Net of Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_CC3CF662F41C6891B4B3A2DC9DCBE0AF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_CC3CF662F41C6891B4B3A2DC9DCBE0AF" xlink:to="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_CC3CF662F41C6891B4B3A2DC9DCBE0AF" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_66FD9B45F2023B9D77C8A2DC9DCC210E_negatedLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_66FD9B45F2023B9D77C8A2DC9DCC210E" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Reclassification of net realized (gain) loss into current operations</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_66FD9B45F2023B9D77C8A2DC9DCC210E_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_66FD9B45F2023B9D77C8A2DC9DCC210E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Reclassification Adjustment from AOCI for Sale of Securities, Net of Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_66FD9B45F2023B9D77C8A2DC9DCC210E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_66FD9B45F2023B9D77C8A2DC9DCC210E" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_66FD9B45F2023B9D77C8A2DC9DCC210E" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_B1D626F42322AE5A356FA2DC9DCCC37A_totalLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_B1D626F42322AE5A356FA2DC9DCCC37A" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net change related to available-for-sale investments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_B1D626F42322AE5A356FA2DC9DCCC37A_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_B1D626F42322AE5A356FA2DC9DCCC37A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Available-for-sale Securities Adjustment, Net of Tax, Portion Attributable to Parent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_B1D626F42322AE5A356FA2DC9DCCC37A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_B1D626F42322AE5A356FA2DC9DCCC37A" xlink:to="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_B1D626F42322AE5A356FA2DC9DCCC37A" xlink:type="arc" />
    <link:label id="lab_cgnx_CurrencytranslationadjustmentsAbstract_1E4BB75B139E5BE2CE15A2DC9DCC7030_terseLabel_en-US" xlink:label="lab_cgnx_CurrencytranslationadjustmentsAbstract_1E4BB75B139E5BE2CE15A2DC9DCC7030" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency translation adjustments:</link:label>
    <link:label id="lab_cgnx_CurrencytranslationadjustmentsAbstract_1E4BB75B139E5BE2CE15A2DC9DCC7030_label_en-US" xlink:label="lab_cgnx_CurrencytranslationadjustmentsAbstract_1E4BB75B139E5BE2CE15A2DC9DCC7030" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Currency translation adjustments [Abstract]</link:label>
    <link:label id="lab_cgnx_CurrencytranslationadjustmentsAbstract_1E4BB75B139E5BE2CE15A2DC9DCC7030_documentation_en-US" xlink:label="lab_cgnx_CurrencytranslationadjustmentsAbstract_1E4BB75B139E5BE2CE15A2DC9DCC7030" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Currency translation adjustments [Abstract]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_CurrencytranslationadjustmentsAbstract" xlink:label="loc_cgnx_CurrencytranslationadjustmentsAbstract_1E4BB75B139E5BE2CE15A2DC9DCC7030" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_CurrencytranslationadjustmentsAbstract_1E4BB75B139E5BE2CE15A2DC9DCC7030" xlink:to="lab_cgnx_CurrencytranslationadjustmentsAbstract_1E4BB75B139E5BE2CE15A2DC9DCC7030" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_2144F8D0414F157CACADA2DC9DCCD4B2_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_2144F8D0414F157CACADA2DC9DCCD4B2" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency translation adjustments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_2144F8D0414F157CACADA2DC9DCCD4B2_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_2144F8D0414F157CACADA2DC9DCCD4B2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_2144F8D0414F157CACADA2DC9DCCD4B2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_2144F8D0414F157CACADA2DC9DCCD4B2" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_2144F8D0414F157CACADA2DC9DCCD4B2" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1957163EC3D81C525283A2DC9DCC24B3_totalLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1957163EC3D81C525283A2DC9DCC24B3" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Other comprehensive income (loss), net of tax</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1957163EC3D81C525283A2DC9DCC24B3_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1957163EC3D81C525283A2DC9DCC24B3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1957163EC3D81C525283A2DC9DCC24B3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1957163EC3D81C525283A2DC9DCC24B3" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1957163EC3D81C525283A2DC9DCC24B3" xlink:type="arc" />
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_B0CBB22697D773A306BAA2DC9DCD1CEB_totalLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax_B0CBB22697D773A306BAA2DC9DCD1CEB" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total comprehensive income</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_B0CBB22697D773A306BAA2DC9DCD1CEB_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax_B0CBB22697D773A306BAA2DC9DCD1CEB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_B0CBB22697D773A306BAA2DC9DCD1CEB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_B0CBB22697D773A306BAA2DC9DCD1CEB" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTax_B0CBB22697D773A306BAA2DC9DCD1CEB" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative [Table]</link:label>
    <link:label id="lab_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671_label_en-US" xlink:label="lab_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeTable" xlink:label="loc_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:to="lab_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:type="arc" />
    <link:label id="lab_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443_terseLabel_en-US" xlink:label="lab_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Currency [Axis]</link:label>
    <link:label id="lab_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443_label_en-US" xlink:label="lab_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Currency [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CurrencyAxis" xlink:label="loc_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443" xlink:to="lab_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443" xlink:type="arc" />
    <link:label id="lab_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132_terseLabel_en-US" xlink:label="lab_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Currencies [Domain]</link:label>
    <link:label id="lab_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132_label_en-US" xlink:label="lab_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">All Currencies [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_AllCurrenciesDomain" xlink:label="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="lab_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:type="arc" />
    <link:label id="lab_currency_EUR_ADF1C3F5F578C11D8FC6AB039D573C9A_terseLabel_en-US" xlink:label="lab_currency_EUR_ADF1C3F5F578C11D8FC6AB039D573C9A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Euro Member Countries, Euro</link:label>
    <link:label id="lab_currency_EUR_ADF1C3F5F578C11D8FC6AB039D573C9A_label_en-US" xlink:label="lab_currency_EUR_ADF1C3F5F578C11D8FC6AB039D573C9A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Euro Member Countries, Euro</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_EUR" xlink:label="loc_currency_EUR_ADF1C3F5F578C11D8FC6AB039D573C9A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_EUR_ADF1C3F5F578C11D8FC6AB039D573C9A" xlink:to="lab_currency_EUR_ADF1C3F5F578C11D8FC6AB039D573C9A" xlink:type="arc" />
    <link:label id="lab_currency_JPY_CAAB1E17DD5823EE7D69AB039D57F79C_terseLabel_en-US" xlink:label="lab_currency_JPY_CAAB1E17DD5823EE7D69AB039D57F79C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Japanese Yen</link:label>
    <link:label id="lab_currency_JPY_CAAB1E17DD5823EE7D69AB039D57F79C_label_en-US" xlink:label="lab_currency_JPY_CAAB1E17DD5823EE7D69AB039D57F79C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Japan, Yen</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_JPY" xlink:label="loc_currency_JPY_CAAB1E17DD5823EE7D69AB039D57F79C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_JPY_CAAB1E17DD5823EE7D69AB039D57F79C" xlink:to="lab_currency_JPY_CAAB1E17DD5823EE7D69AB039D57F79C" xlink:type="arc" />
    <link:label id="lab_currency_GBP_DB6D9F46525D0DC5A17EAB039D57942B_terseLabel_en-US" xlink:label="lab_currency_GBP_DB6D9F46525D0DC5A17EAB039D57942B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">United Kingdom, Pounds</link:label>
    <link:label id="lab_currency_GBP_DB6D9F46525D0DC5A17EAB039D57942B_label_en-US" xlink:label="lab_currency_GBP_DB6D9F46525D0DC5A17EAB039D57942B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">United Kingdom, Pounds</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_GBP" xlink:label="loc_currency_GBP_DB6D9F46525D0DC5A17EAB039D57942B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_GBP_DB6D9F46525D0DC5A17EAB039D57942B" xlink:to="lab_currency_GBP_DB6D9F46525D0DC5A17EAB039D57942B" xlink:type="arc" />
    <link:label id="lab_currency_HUF_39045233C091A2348A8DAB039D578560_terseLabel_en-US" xlink:label="lab_currency_HUF_39045233C091A2348A8DAB039D578560" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hungary, Forint</link:label>
    <link:label id="lab_currency_HUF_39045233C091A2348A8DAB039D578560_label_en-US" xlink:label="lab_currency_HUF_39045233C091A2348A8DAB039D578560" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Hungary, Forint</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_HUF" xlink:label="loc_currency_HUF_39045233C091A2348A8DAB039D578560" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_HUF_39045233C091A2348A8DAB039D578560" xlink:to="lab_currency_HUF_39045233C091A2348A8DAB039D578560" xlink:type="arc" />
    <link:label id="lab_currency_KRW_A4F1B5B34FDC79E7BCC7AB039D573974_terseLabel_en-US" xlink:label="lab_currency_KRW_A4F1B5B34FDC79E7BCC7AB039D573974" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Korean Won</link:label>
    <link:label id="lab_currency_KRW_A4F1B5B34FDC79E7BCC7AB039D573974_label_en-US" xlink:label="lab_currency_KRW_A4F1B5B34FDC79E7BCC7AB039D573974" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Korea (South), Won</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_KRW" xlink:label="loc_currency_KRW_A4F1B5B34FDC79E7BCC7AB039D573974" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_KRW_A4F1B5B34FDC79E7BCC7AB039D573974" xlink:to="lab_currency_KRW_A4F1B5B34FDC79E7BCC7AB039D573974" xlink:type="arc" />
    <link:label id="lab_currency_TWD_E6025CE6D4A82278AD37AB039D571CEE_terseLabel_en-US" xlink:label="lab_currency_TWD_E6025CE6D4A82278AD37AB039D571CEE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Taiwanese Dollar</link:label>
    <link:label id="lab_currency_TWD_E6025CE6D4A82278AD37AB039D571CEE_label_en-US" xlink:label="lab_currency_TWD_E6025CE6D4A82278AD37AB039D571CEE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Taiwan, New Dollars</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_TWD" xlink:label="loc_currency_TWD_E6025CE6D4A82278AD37AB039D571CEE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_TWD_E6025CE6D4A82278AD37AB039D571CEE" xlink:to="lab_currency_TWD_E6025CE6D4A82278AD37AB039D571CEE" xlink:type="arc" />
    <link:label id="lab_currency_CAD_FB036F855D0DD9BE07D6AB039D5712E1_terseLabel_en-US" xlink:label="lab_currency_CAD_FB036F855D0DD9BE07D6AB039D5712E1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Canada, Dollars</link:label>
    <link:label id="lab_currency_CAD_FB036F855D0DD9BE07D6AB039D5712E1_label_en-US" xlink:label="lab_currency_CAD_FB036F855D0DD9BE07D6AB039D5712E1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Canada, Dollars</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_CAD" xlink:label="loc_currency_CAD_FB036F855D0DD9BE07D6AB039D5712E1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_CAD_FB036F855D0DD9BE07D6AB039D5712E1" xlink:to="lab_currency_CAD_FB036F855D0DD9BE07D6AB039D5712E1" xlink:type="arc" />
    <link:label id="lab_currency_SGD_303B4B33CC44963BA1C0AB039D5798D9_terseLabel_en-US" xlink:label="lab_currency_SGD_303B4B33CC44963BA1C0AB039D5798D9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Singapore Dollar</link:label>
    <link:label id="lab_currency_SGD_303B4B33CC44963BA1C0AB039D5798D9_label_en-US" xlink:label="lab_currency_SGD_303B4B33CC44963BA1C0AB039D5798D9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Singapore, Dollars</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_SGD" xlink:label="loc_currency_SGD_303B4B33CC44963BA1C0AB039D5798D9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_SGD_303B4B33CC44963BA1C0AB039D5798D9" xlink:to="lab_currency_SGD_303B4B33CC44963BA1C0AB039D5798D9" xlink:type="arc" />
    <link:label id="lab_currency_CHF_E7A2672CEA0ECC4E78E9AB03E42B336F_terseLabel_en-US" xlink:label="lab_currency_CHF_E7A2672CEA0ECC4E78E9AB03E42B336F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Switzerland, Francs</link:label>
    <link:label id="lab_currency_CHF_E7A2672CEA0ECC4E78E9AB03E42B336F_label_en-US" xlink:label="lab_currency_CHF_E7A2672CEA0ECC4E78E9AB03E42B336F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Switzerland, Francs</link:label>
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_CHF" xlink:label="loc_currency_CHF_E7A2672CEA0ECC4E78E9AB03E42B336F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_CHF_E7A2672CEA0ECC4E78E9AB03E42B336F" xlink:to="lab_currency_CHF_E7A2672CEA0ECC4E78E9AB03E42B336F" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative [Line Items]</link:label>
    <link:label id="lab_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD_label_en-US" xlink:label="lab_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeLineItems" xlink:label="loc_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD" xlink:to="lab_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeAssetNotionalAmount_F1BB1EFFC26AF643B613AB039D579846_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssetNotionalAmount_F1BB1EFFC26AF643B613AB039D579846" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding forward contracts</link:label>
    <link:label id="lab_us-gaap_DerivativeAssetNotionalAmount_F1BB1EFFC26AF643B613AB039D579846_label_en-US" xlink:label="lab_us-gaap_DerivativeAssetNotionalAmount_F1BB1EFFC26AF643B613AB039D579846" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Asset, Notional Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeAssetNotionalAmount" xlink:label="loc_us-gaap_DerivativeAssetNotionalAmount_F1BB1EFFC26AF643B613AB039D579846" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeAssetNotionalAmount_F1BB1EFFC26AF643B613AB039D579846" xlink:to="lab_us-gaap_DerivativeAssetNotionalAmount_F1BB1EFFC26AF643B613AB039D579846" xlink:type="arc" />
    <link:label id="lab_us-gaap_EquityAbstract_FBD2E642C7358AAE29C094A14EE8D81C_label_en-US" xlink:label="lab_us-gaap_EquityAbstract_C79CFF7061AA5905ADF8428B172375DD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_C79CFF7061AA5905ADF8428B172375DD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityAbstract_C79CFF7061AA5905ADF8428B172375DD" xlink:to="lab_us-gaap_EquityAbstract_C79CFF7061AA5905ADF8428B172375DD" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_10FA0B1DAE388A37F2A494A14EE8E6EC_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5400FC22A30956BEB83DDD302DA2324A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_10FA0B1DAE388A37F2A494A14EE8E6EC_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5400FC22A30956BEB83DDD302DA2324A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stockholders' Equity Note Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5400FC22A30956BEB83DDD302DA2324A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5400FC22A30956BEB83DDD302DA2324A" xlink:to="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5400FC22A30956BEB83DDD302DA2324A" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_9EEFEA6D38027BA155AEAD75BC59AA0B_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_9EEFEA6D38027BA155AEAD75BC59AA0B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of New Accounting Pronouncements and Changes in Accounting Principles</link:label>
    <link:label id="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_9EEFEA6D38027BA155AEAD75BC59AA0B_label_en-US" xlink:label="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_9EEFEA6D38027BA155AEAD75BC59AA0B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of New Accounting Pronouncements and Changes in Accounting Principles [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="loc_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_9EEFEA6D38027BA155AEAD75BC59AA0B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_9EEFEA6D38027BA155AEAD75BC59AA0B" xlink:to="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_9EEFEA6D38027BA155AEAD75BC59AA0B" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_A705E18671F5D0458816AD772689B45D_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_A705E18671F5D0458816AD772689B45D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Geographic Areas</link:label>
    <link:label id="lab_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_A705E18671F5D0458816AD772689B45D_label_en-US" xlink:label="lab_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_A705E18671F5D0458816AD772689B45D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Geographic Areas [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:label="loc_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_A705E18671F5D0458816AD772689B45D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_A705E18671F5D0458816AD772689B45D" xlink:to="lab_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_A705E18671F5D0458816AD772689B45D" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_209AE14C4D11FC20DFE5AD77E24C0455_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_209AE14C4D11FC20DFE5AD77E24C0455" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Products and Services</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_209AE14C4D11FC20DFE5AD77E24C0455_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_209AE14C4D11FC20DFE5AD77E24C0455" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Products and Services [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_209AE14C4D11FC20DFE5AD77E24C0455" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_209AE14C4D11FC20DFE5AD77E24C0455" xlink:to="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_209AE14C4D11FC20DFE5AD77E24C0455" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_7910ED2106242DD5EE49AD7C79ABE9AA_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_7910ED2106242DD5EE49AD7C79ABE9AA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Revenue, by Arrangement, Disclosure</link:label>
    <link:label id="lab_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_7910ED2106242DD5EE49AD7C79ABE9AA_label_en-US" xlink:label="lab_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_7910ED2106242DD5EE49AD7C79ABE9AA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue, by Arrangement, Disclosure [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenueByArrangementDisclosureTextBlock" xlink:label="loc_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_7910ED2106242DD5EE49AD7C79ABE9AA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_7910ED2106242DD5EE49AD7C79ABE9AA" xlink:to="lab_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_7910ED2106242DD5EE49AD7C79ABE9AA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_583201E86163649D3C9C94A14F81912A_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_82C0FC67AA175692987B87CF39A64C8D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Assets and Liabilities Measured at Fair Value on a Recurring Basis</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_583201E86163649D3C9C94A14F81912A_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_82C0FC67AA175692987B87CF39A64C8D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_82C0FC67AA175692987B87CF39A64C8D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_82C0FC67AA175692987B87CF39A64C8D" xlink:to="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_82C0FC67AA175692987B87CF39A64C8D" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_031CD5222344AC3DA4E694A14F81D1B9_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_9533069B9D81555BADC62C1E2BEA7494" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation</link:label>
    <link:label id="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_031CD5222344AC3DA4E694A14F81D1B9_label_en-US" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_9533069B9D81555BADC62C1E2BEA7494" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_9533069B9D81555BADC62C1E2BEA7494" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_9533069B9D81555BADC62C1E2BEA7494" xlink:to="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_9533069B9D81555BADC62C1E2BEA7494" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_649EACBDA0411514A2B394A14EA64C8F_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_40F6F10FF9595BAB9AB408EC8E211877" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disclosure of Compensation Related Costs, Share-based Payments [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_40F6F10FF9595BAB9AB408EC8E211877" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_40F6F10FF9595BAB9AB408EC8E211877" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_40F6F10FF9595BAB9AB408EC8E211877" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_9A46A912FFCB6EC2C8A494A14EA7B9FF_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_62AC8C6368FF5AF9BCBA5B10FC316CFA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Risk-free rate</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_9A46A912FFCB6EC2C8A494A14EA7B9FF_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_62AC8C6368FF5AF9BCBA5B10FC316CFA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_62AC8C6368FF5AF9BCBA5B10FC316CFA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_62AC8C6368FF5AF9BCBA5B10FC316CFA" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_62AC8C6368FF5AF9BCBA5B10FC316CFA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_C2547C383044725B51D594A14EB0CB3F_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_DA996E985B9B5A619126E641B3551AF5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expected dividend yield</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_C2547C383044725B51D594A14EB0CB3F_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_DA996E985B9B5A619126E641B3551AF5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_DA996E985B9B5A619126E641B3551AF5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_DA996E985B9B5A619126E641B3551AF5" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_DA996E985B9B5A619126E641B3551AF5" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_7E89902572C87E4B433994A14EB1BF98_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_9CAEFAF38FD252BAB90E2454784E5C0A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expected volatility</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_7E89902572C87E4B433994A14EB1BF98_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_9CAEFAF38FD252BAB90E2454784E5C0A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_9CAEFAF38FD252BAB90E2454784E5C0A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_9CAEFAF38FD252BAB90E2454784E5C0A" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_9CAEFAF38FD252BAB90E2454784E5C0A" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_4FCDE78648F341DF729394A14EB1A65D_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_90C01A286D4F54369AFC42D0B29B7467" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expected term (in years)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_4FCDE78648F341DF729394A14EB1A65D_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_90C01A286D4F54369AFC42D0B29B7467" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_90C01A286D4F54369AFC42D0B29B7467" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_90C01A286D4F54369AFC42D0B29B7467" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_90C01A286D4F54369AFC42D0B29B7467" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_76CAFE7C2F8BE0609B3BACEF106139B1_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_76CAFE7C2F8BE0609B3BACEF106139B1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair value, less than 12 months</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_76CAFE7C2F8BE0609B3BACEF106139B1_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_76CAFE7C2F8BE0609B3BACEF106139B1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Continuous Unrealized Loss Position, Less than Twelve Months, Fair Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_76CAFE7C2F8BE0609B3BACEF106139B1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_76CAFE7C2F8BE0609B3BACEF106139B1" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_76CAFE7C2F8BE0609B3BACEF106139B1" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_169D2DBE61F5626280B3ACEF10610CDA_negatedLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_169D2DBE61F5626280B3ACEF10610CDA" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Unrealized losses, less than 12 months</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_169D2DBE61F5626280B3ACEF10610CDA_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_169D2DBE61F5626280B3ACEF10610CDA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Continuous Unrealized Loss Position, Less than 12 Months, Accumulated Loss</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_169D2DBE61F5626280B3ACEF10610CDA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_169D2DBE61F5626280B3ACEF10610CDA" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_169D2DBE61F5626280B3ACEF10610CDA" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_348D2EA2DAF2F9DADC5DACEF106193C2_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_348D2EA2DAF2F9DADC5DACEF106193C2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair value, 12 months or greater</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_348D2EA2DAF2F9DADC5DACEF106193C2_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_348D2EA2DAF2F9DADC5DACEF106193C2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Continuous Unrealized Loss Position, Twelve Months or Longer, Fair Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_348D2EA2DAF2F9DADC5DACEF106193C2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_348D2EA2DAF2F9DADC5DACEF106193C2" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_348D2EA2DAF2F9DADC5DACEF106193C2" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_BA5331F16DD445431841ACEF1061CECA_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_BA5331F16DD445431841ACEF1061CECA" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Unrealized losses, 12 months or greater</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_BA5331F16DD445431841ACEF1061CECA_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_BA5331F16DD445431841ACEF1061CECA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Continuous Unrealized Loss Position, 12 Months or Longer, Accumulated Loss</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_BA5331F16DD445431841ACEF1061CECA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_BA5331F16DD445431841ACEF1061CECA" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_BA5331F16DD445431841ACEF1061CECA" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_DAA251287549B5469A49ACEF10621ED3_totalLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_DAA251287549B5469A49ACEF10621ED3" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total fair value</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_DAA251287549B5469A49ACEF10621ED3_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_DAA251287549B5469A49ACEF10621ED3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Continuous Unrealized Loss Position, Fair Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_DAA251287549B5469A49ACEF10621ED3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_DAA251287549B5469A49ACEF10621ED3" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_DAA251287549B5469A49ACEF10621ED3" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5D2E572661FC4CF50D92ACEF1062DEB3_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5D2E572661FC4CF50D92ACEF1062DEB3" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xml:lang="en-US">Total unrealized losses</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5D2E572661FC4CF50D92ACEF1062DEB3_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5D2E572661FC4CF50D92ACEF1062DEB3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Debt Securities, Accumulated Gross Unrealized Loss, before Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5D2E572661FC4CF50D92ACEF1062DEB3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5D2E572661FC4CF50D92ACEF1062DEB3" xlink:to="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5D2E572661FC4CF50D92ACEF1062DEB3" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_FC3B67654476B8BC6B1D94A14EE5D399_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_E5AD33C2AD0A5E8798831838F614F1E1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Stock Option Activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_FC3B67654476B8BC6B1D94A14EE5D399_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_E5AD33C2AD0A5E8798831838F614F1E1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation, Stock Options, Activity [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_E5AD33C2AD0A5E8798831838F614F1E1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_E5AD33C2AD0A5E8798831838F614F1E1" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_E5AD33C2AD0A5E8798831838F614F1E1" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_5E5B3F223B6DEF07782B94A14EE518D3_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_81E673391A7054F0A8EB14384BF1266E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_5E5B3F223B6DEF07782B94A14EE518D3_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_81E673391A7054F0A8EB14384BF1266E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_81E673391A7054F0A8EB14384BF1266E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_81E673391A7054F0A8EB14384BF1266E" xlink:to="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_81E673391A7054F0A8EB14384BF1266E" xlink:type="arc" />
    <link:label id="lab_us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock_ED91033905F1D8C51F4794A14EE54FC0_terseLabel_en-US" xlink:label="lab_us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock_2DD3E89372C25B62957051F02EC37D5E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Nonvested Restricted Stock Shares Activity</link:label>
    <link:label id="lab_us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock_ED91033905F1D8C51F4794A14EE54FC0_label_en-US" xlink:label="lab_us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock_2DD3E89372C25B62957051F02EC37D5E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Nonvested Restricted Stock Shares Activity [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock" xlink:label="loc_us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock_2DD3E89372C25B62957051F02EC37D5E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock_2DD3E89372C25B62957051F02EC37D5E" xlink:to="lab_us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock_2DD3E89372C25B62957051F02EC37D5E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_EEE71B249BD3C020222694A14EE61500_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_0010728A4B4B5E2EA44EFF486F1436A5" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_EEE71B249BD3C020222694A14EE61500_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_0010728A4B4B5E2EA44EFF486F1436A5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_0010728A4B4B5E2EA44EFF486F1436A5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_0010728A4B4B5E2EA44EFF486F1436A5" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_0010728A4B4B5E2EA44EFF486F1436A5" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_98893CF414A5F7088CE394A14EFAB8A6_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_4178694804445089A980646B76652055" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Inventories</link:label>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_98893CF414A5F7088CE394A14EFAB8A6_label_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_4178694804445089A980646B76652055" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_4178694804445089A980646B76652055" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_4178694804445089A980646B76652055" xlink:to="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_4178694804445089A980646B76652055" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_5D7642C002EE21C31E9094A151754CA7_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock_FE59406A84DA5CF9ABAE6B4A3FA64970" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_5D7642C002EE21C31E9094A151754CA7_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock_FE59406A84DA5CF9ABAE6B4A3FA64970" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_FE59406A84DA5CF9ABAE6B4A3FA64970" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureTextBlock_FE59406A84DA5CF9ABAE6B4A3FA64970" xlink:to="lab_us-gaap_InventoryDisclosureTextBlock_FE59406A84DA5CF9ABAE6B4A3FA64970" xlink:type="arc" />
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_C04502A55913AA830C2A94A14F4364CC_terseLabel_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock_90781A7ADE28548DBA568D183CDCE28C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Significant Accounting Policies</link:label>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_C04502A55913AA830C2A94A14F4364CC_label_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock_90781A7ADE28548DBA568D183CDCE28C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Significant Accounting Policies [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_90781A7ADE28548DBA568D183CDCE28C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SignificantAccountingPoliciesTextBlock_90781A7ADE28548DBA568D183CDCE28C" xlink:to="lab_us-gaap_SignificantAccountingPoliciesTextBlock_90781A7ADE28548DBA568D183CDCE28C" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeFairValueOfDerivativeAsset_1B8FFA8D52E6C0F68BF294A1500BA811_verboseLabel_en-US" xlink:label="lab_us-gaap_DerivativeFairValueOfDerivativeAsset_0CE7BE289F6453469F973AB67A8C291E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Gross amounts of recognized assets</link:label>
    <link:label id="lab_us-gaap_DerivativeFairValueOfDerivativeAsset_1B8FFA8D52E6C0F68BF294A1500BA811_label_en-US" xlink:label="lab_us-gaap_DerivativeFairValueOfDerivativeAsset_0CE7BE289F6453469F973AB67A8C291E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Asset, Fair Value, Gross Asset</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeFairValueOfDerivativeAsset" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeAsset_0CE7BE289F6453469F973AB67A8C291E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeFairValueOfDerivativeAsset_0CE7BE289F6453469F973AB67A8C291E" xlink:to="lab_us-gaap_DerivativeFairValueOfDerivativeAsset_0CE7BE289F6453469F973AB67A8C291E" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_AC33AF1BD4EDF02C697794A1500B2799_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_4EF79EB68E745078ADDD21C3C55C84FB" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Gross amounts offset</link:label>
    <link:label id="lab_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_AC33AF1BD4EDF02C697794A1500B2799_label_en-US" xlink:label="lab_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_4EF79EB68E745078ADDD21C3C55C84FB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Asset, Collateral, Obligation to Return Cash, Offset</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset" xlink:label="loc_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_4EF79EB68E745078ADDD21C3C55C84FB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_4EF79EB68E745078ADDD21C3C55C84FB" xlink:to="lab_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_4EF79EB68E745078ADDD21C3C55C84FB" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeAssets_CACDD6251D7B5B9F876094A1500BDC63_totalLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssets_B2B0894239A95DB69B1FF290BBAD73BA" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net amount of assets presented</link:label>
    <link:label id="lab_us-gaap_DerivativeAssets_CACDD6251D7B5B9F876094A1500BDC63_label_en-US" xlink:label="lab_us-gaap_DerivativeAssets_B2B0894239A95DB69B1FF290BBAD73BA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Asset</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_B2B0894239A95DB69B1FF290BBAD73BA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeAssets_B2B0894239A95DB69B1FF290BBAD73BA" xlink:to="lab_us-gaap_DerivativeAssets_B2B0894239A95DB69B1FF290BBAD73BA" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeFairValueOfDerivativeLiability_A759A296BBC9BBCA500494A1500C4C24_verboseLabel_en-US" xlink:label="lab_us-gaap_DerivativeFairValueOfDerivativeLiability_328F034BFC105B51A3A3151A4D157CB4" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Gross amounts of recognized liabilities</link:label>
    <link:label id="lab_us-gaap_DerivativeFairValueOfDerivativeLiability_A759A296BBC9BBCA500494A1500C4C24_label_en-US" xlink:label="lab_us-gaap_DerivativeFairValueOfDerivativeLiability_328F034BFC105B51A3A3151A4D157CB4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Liability, Fair Value, Gross Liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeFairValueOfDerivativeLiability" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeLiability_328F034BFC105B51A3A3151A4D157CB4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeFairValueOfDerivativeLiability_328F034BFC105B51A3A3151A4D157CB4" xlink:to="lab_us-gaap_DerivativeFairValueOfDerivativeLiability_328F034BFC105B51A3A3151A4D157CB4" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_7A7FEFC6D3791B2E4FA594A1500C54C3_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_559870A38D4E5333BF48711F14D1333E" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Gross amounts offset</link:label>
    <link:label id="lab_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_7A7FEFC6D3791B2E4FA594A1500C54C3_label_en-US" xlink:label="lab_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_559870A38D4E5333BF48711F14D1333E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Liability, Collateral, Right to Reclaim Cash, Offset</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset" xlink:label="loc_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_559870A38D4E5333BF48711F14D1333E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_559870A38D4E5333BF48711F14D1333E" xlink:to="lab_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_559870A38D4E5333BF48711F14D1333E" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeLiabilities_4FA64A83ADC2E5C70FD694A1500C4793_totalLabel_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities_43DF0192E14D582092134861D1DA18D6" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net amount of liabilities presented</link:label>
    <link:label id="lab_us-gaap_DerivativeLiabilities_4FA64A83ADC2E5C70FD694A1500C4793_label_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities_43DF0192E14D582092134861D1DA18D6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_43DF0192E14D582092134861D1DA18D6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLiabilities_43DF0192E14D582092134861D1DA18D6" xlink:to="lab_us-gaap_DerivativeLiabilities_43DF0192E14D582092134861D1DA18D6" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_215B696C26D3A9F3445994A14F10DF6D_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock_3A1A260A7E1C5118BDC9B0BF4A048AA0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Measurements</link:label>
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_215B696C26D3A9F3445994A14F10DF6D_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock_3A1A260A7E1C5118BDC9B0BF4A048AA0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Disclosures [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock_3A1A260A7E1C5118BDC9B0BF4A048AA0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresTextBlock_3A1A260A7E1C5118BDC9B0BF4A048AA0" xlink:to="lab_us-gaap_FairValueDisclosuresTextBlock_3A1A260A7E1C5118BDC9B0BF4A048AA0" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProductWarrantyDisclosureTextBlock_7ECC4F1D2C1B8EDD0FFC94A14E96CB71_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyDisclosureTextBlock_848F2EF42AE05473B7965EF49CF96BDA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Warranty Obligations</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyDisclosureTextBlock_7ECC4F1D2C1B8EDD0FFC94A14E96CB71_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyDisclosureTextBlock_848F2EF42AE05473B7965EF49CF96BDA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product Warranty Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantyDisclosureTextBlock" xlink:label="loc_us-gaap_ProductWarrantyDisclosureTextBlock_848F2EF42AE05473B7965EF49CF96BDA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyDisclosureTextBlock_848F2EF42AE05473B7965EF49CF96BDA" xlink:to="lab_us-gaap_ProductWarrantyDisclosureTextBlock_848F2EF42AE05473B7965EF49CF96BDA" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_A7007462A7B48ADF2162AD11C502AC3E_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_A7007462A7B48ADF2162AD11C502AC3E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue Recognition</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_A7007462A7B48ADF2162AD11C502AC3E_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_A7007462A7B48ADF2162AD11C502AC3E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_A7007462A7B48ADF2162AD11C502AC3E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_A7007462A7B48ADF2162AD11C502AC3E" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_A7007462A7B48ADF2162AD11C502AC3E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:type="arc" />
    <link:label id="lab_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE_terseLabel_en-US" xlink:label="lab_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE_label_en-US" xlink:label="lab_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE" xlink:to="lab_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Award [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Award [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_2A327B49144136C97173A73B8D238343_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember_2A327B49144136C97173A73B8D238343" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employee Stock Option</link:label>
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_2A327B49144136C97173A73B8D238343_label_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember_2A327B49144136C97173A73B8D238343" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee Stock Option [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_2A327B49144136C97173A73B8D238343" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockOptionMember_2A327B49144136C97173A73B8D238343" xlink:to="lab_us-gaap_EmployeeStockOptionMember_2A327B49144136C97173A73B8D238343" xlink:type="arc" />
    <link:label id="lab_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:label id="lab_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D_label_en-US" xlink:label="lab_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D" xlink:to="lab_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D" xlink:type="arc" />
    <link:label id="lab_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:label id="lab_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E_label_en-US" xlink:label="lab_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E" xlink:to="lab_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E" xlink:type="arc" />
    <link:label id="lab_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3_terseLabel_en-US" xlink:label="lab_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">General Stock Option Plan</link:label>
    <link:label id="lab_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3_label_en-US" xlink:label="lab_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">General Stock Option Plan [Member]</link:label>
    <link:label id="lab_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3_documentation_en-US" xlink:label="lab_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">General stock option plan.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_GeneralStockOptionPlanMember" xlink:label="loc_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3" xlink:to="lab_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_86A2FD71D6CDA8B90A0EA73B8D25206B_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_86A2FD71D6CDA8B90A0EA73B8D25206B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares available for grant under stock option plans</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_86A2FD71D6CDA8B90A0EA73B8D25206B_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_86A2FD71D6CDA8B90A0EA73B8D25206B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_86A2FD71D6CDA8B90A0EA73B8D25206B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_86A2FD71D6CDA8B90A0EA73B8D25206B" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_86A2FD71D6CDA8B90A0EA73B8D25206B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_A87C5C458E0213BA8A7EA73B8D25D898_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_A87C5C458E0213BA8A7EA73B8D25D898" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vesting period for stock option plans</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_A87C5C458E0213BA8A7EA73B8D25D898_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_A87C5C458E0213BA8A7EA73B8D25D898" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_A87C5C458E0213BA8A7EA73B8D25D898" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_A87C5C458E0213BA8A7EA73B8D25D898" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_A87C5C458E0213BA8A7EA73B8D25D898" xlink:type="arc" />
    <link:label id="lab_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759_terseLabel_en-US" xlink:label="lab_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expiration period from grant day</link:label>
    <link:label id="lab_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759_label_en-US" xlink:label="lab_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Expiration Period Of Stock Option Plan</link:label>
    <link:label id="lab_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759_documentation_en-US" xlink:label="lab_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Expiration period of stock option plan.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ExpirationPeriodOfStockOptionPlan" xlink:label="loc_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759" xlink:to="lab_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759" xlink:type="arc" />
    <link:label id="lab_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC_terseLabel_en-US" xlink:label="lab_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vesting period, performance-based restricted stock, years</link:label>
    <link:label id="lab_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC_label_en-US" xlink:label="lab_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Vesting period, performance-based restricted stock, years</link:label>
    <link:label id="lab_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC_documentation_en-US" xlink:label="lab_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Vesting period, performance-based restricted stock, years</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Vestingperiodperformancebasedrestrictedstockyears" xlink:label="loc_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC" xlink:to="lab_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC" xlink:type="arc" />
    <link:label id="lab_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9_terseLabel_en-US" xlink:label="lab_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vesting period, time-based restricted stock, years</link:label>
    <link:label id="lab_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9_label_en-US" xlink:label="lab_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Vesting period, time-based restricted stock, years</link:label>
    <link:label id="lab_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9_documentation_en-US" xlink:label="lab_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Vesting period, time-based restricted stock, years</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Vestingperiodtimebasedrestrictedstockyears" xlink:label="loc_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9" xlink:to="lab_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9" xlink:type="arc" />
    <link:label id="lab_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0_terseLabel_en-US" xlink:label="lab_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Groups within the employee population</link:label>
    <link:label id="lab_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0_label_en-US" xlink:label="lab_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Number Of Groups Within Employee Population</link:label>
    <link:label id="lab_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0_documentation_en-US" xlink:label="lab_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Number of groups within employee population.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_NumberOfGroupsWithinEmployeePopulation" xlink:label="loc_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0" xlink:to="lab_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0" xlink:type="arc" />
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5_terseLabel_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Estimated annual forfeiture rate for unvested options for senior management</link:label>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5_label_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Estimated Forfeiture Rate For Unvested Options For Senior Management</link:label>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5_documentation_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Estimated forfeiture rate for unvested options for senior management.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5" xlink:to="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5" xlink:type="arc" />
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E_terseLabel_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Estimated annual forfeiture rate for unvested options for all other employees</link:label>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E_label_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Estimated Forfeiture Rate For Unvested Options For All Non Senior Management</link:label>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E_documentation_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Estimated forfeiture rate for unvested options for all non-senior management.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E" xlink:to="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E" xlink:type="arc" />
    <link:label id="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33_terseLabel_en-US" xlink:label="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase (decrease) to compensation expense</link:label>
    <link:label id="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33_label_en-US" xlink:label="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase In Compensation Expense Due To Revised Estimated Forfeiture Rates</link:label>
    <link:label id="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33_documentation_en-US" xlink:label="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Increase (decrease) in compensation expense due to revised estimated forfeiture rates.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:label="loc_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33" xlink:to="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_DDB0E40A257A580A0DEFA73B8D2722CC_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_DDB0E40A257A580A0DEFA73B8D2722CC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted-average grant-date fair values, in dollars per share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_DDB0E40A257A580A0DEFA73B8D2722CC_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_DDB0E40A257A580A0DEFA73B8D2722CC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_DDB0E40A257A580A0DEFA73B8D2722CC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_DDB0E40A257A580A0DEFA73B8D2722CC" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_DDB0E40A257A580A0DEFA73B8D2722CC" xlink:type="arc" />
    <link:label id="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC_terseLabel_en-US" xlink:label="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total intrinsic value</link:label>
    <link:label id="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC_label_en-US" xlink:label="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shares Based Compensation Arrangement By Shares Based Payment Award Options Exercisable Intrinsic Value</link:label>
    <link:label id="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC_documentation_en-US" xlink:label="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Shares based compensation arrangement by shares based payment award options exercisable intrinsic value.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" xlink:label="loc_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC" xlink:to="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC" xlink:type="arc" />
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98_terseLabel_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total fair values of stock options vest</link:label>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98_label_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Options Vested Fair Value</link:label>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98_documentation_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Share based compensation arrangement by share based payment award options vested fair value.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98" xlink:to="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_18648559060C8D08CD1AA73B8D27A429_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_18648559060C8D08CD1AA73B8D27A429" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unrecognized compensation expense</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_18648559060C8D08CD1AA73B8D27A429_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_18648559060C8D08CD1AA73B8D27A429" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_18648559060C8D08CD1AA73B8D27A429" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_18648559060C8D08CD1AA73B8D27A429" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_18648559060C8D08CD1AA73B8D27A429" xlink:type="arc" />
    <link:label id="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E_terseLabel_en-US" xlink:label="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average period to be recognized</link:label>
    <link:label id="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E_label_en-US" xlink:label="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Period for Recognition</link:label>
    <link:label id="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E_documentation_en-US" xlink:label="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Period for Recognition</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" xlink:label="loc_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E" xlink:to="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E" xlink:type="arc" />
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_7D10247846487419138DA73B8D28B6A6_terseLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense_7D10247846487419138DA73B8D28B6A6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock-based compensation expense</link:label>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_7D10247846487419138DA73B8D28B6A6_label_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense_7D10247846487419138DA73B8D28B6A6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Allocated Share-based Compensation Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_7D10247846487419138DA73B8D28B6A6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpense_7D10247846487419138DA73B8D28B6A6" xlink:to="lab_us-gaap_AllocatedShareBasedCompensationExpense_7D10247846487419138DA73B8D28B6A6" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9A0659BA82F53C2130F5A73B8D28B40C_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9A0659BA82F53C2130F5A73B8D28B40C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax benefit from compensation expense</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9A0659BA82F53C2130F5A73B8D28B40C_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9A0659BA82F53C2130F5A73B8D28B40C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Tax Benefit from Compensation Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9A0659BA82F53C2130F5A73B8D28B40C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9A0659BA82F53C2130F5A73B8D28B40C" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9A0659BA82F53C2130F5A73B8D28B40C" xlink:type="arc" />
    <link:label id="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1_terseLabel_en-US" xlink:label="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Recognized period costs capitalized</link:label>
    <link:label id="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1_label_en-US" xlink:label="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee Service Share Based Compensation Recognized Period Costs Capitalized Amount</link:label>
    <link:label id="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1_documentation_en-US" xlink:label="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Employee service share based compensation recognized period costs capitalized amount.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" xlink:label="loc_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1" xlink:to="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1" xlink:type="arc" />
    <link:label id="lab_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Class of Treasury Stock [Table]</link:label>
    <link:label id="lab_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1_label_en-US" xlink:label="lab_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Treasury Stock [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="loc_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1" xlink:to="lab_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2_terseLabel_en-US" xlink:label="lab_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share Repurchase Program [Axis]</link:label>
    <link:label id="lab_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2_label_en-US" xlink:label="lab_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Repurchase Program [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareRepurchaseProgramAxis" xlink:label="loc_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2" xlink:to="lab_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F_terseLabel_en-US" xlink:label="lab_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share Repurchase Program [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F_label_en-US" xlink:label="lab_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Repurchase Program [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareRepurchaseProgramDomain" xlink:label="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:to="lab_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:type="arc" />
    <link:label id="lab_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9_terseLabel_en-US" xlink:label="lab_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Repurchase Program April 2017</link:label>
    <link:label id="lab_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9_label_en-US" xlink:label="lab_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Repurchase Program April 2017 [Member]</link:label>
    <link:label id="lab_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9_documentation_en-US" xlink:label="lab_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Repurchase Program April 2017 [Member]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_RepurchaseProgramApril2017Member" xlink:label="loc_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9" xlink:to="lab_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9" xlink:type="arc" />
    <link:label id="lab_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E_terseLabel_en-US" xlink:label="lab_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Repurchase Program February 2018</link:label>
    <link:label id="lab_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E_label_en-US" xlink:label="lab_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Repurchase Program February 2018 [Member]</link:label>
    <link:label id="lab_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E_documentation_en-US" xlink:label="lab_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Repurchase Program February 2018 [Member]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_RepurchaseProgramFebruary2018Member" xlink:label="loc_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E" xlink:to="lab_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E" xlink:type="arc" />
    <link:label id="lab_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1_terseLabel_en-US" xlink:label="lab_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Repurchase Program April 2017 and February 2018</link:label>
    <link:label id="lab_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1_label_en-US" xlink:label="lab_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Repurchase Program April 2017 and February 2018 [Member]</link:label>
    <link:label id="lab_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1_documentation_en-US" xlink:label="lab_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Repurchase Program April 2017 and February 2018 [Member]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_RepurchaseProgramApril2017andFebruary2018Member" xlink:label="loc_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1" xlink:to="lab_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1" xlink:type="arc" />
    <link:label id="lab_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009_terseLabel_en-US" xlink:label="lab_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity, Class of Treasury Stock [Line Items]</link:label>
    <link:label id="lab_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009_label_en-US" xlink:label="lab_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity, Class of Treasury Stock [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="lab_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_C415F4D783923D26B75EB1724E4F0D9F_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_C415F4D783923D26B75EB1724E4F0D9F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Authorized common stock to be repurchased</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_C415F4D783923D26B75EB1724E4F0D9F_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_C415F4D783923D26B75EB1724E4F0D9F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Authorized Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_C415F4D783923D26B75EB1724E4F0D9F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_C415F4D783923D26B75EB1724E4F0D9F" xlink:to="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_C415F4D783923D26B75EB1724E4F0D9F" xlink:type="arc" />
    <link:label id="lab_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C_terseLabel_en-US" xlink:label="lab_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Aggregate Number of Shares Repurchased</link:label>
    <link:label id="lab_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C_label_en-US" xlink:label="lab_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Aggregate Number of Shares Repurchased</link:label>
    <link:label id="lab_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C_documentation_en-US" xlink:label="lab_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Aggregate Number of Shares Repurchased</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased" xlink:label="loc_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C" xlink:to="lab_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C" xlink:type="arc" />
    <link:label id="lab_cgnx_StockRepurchaseProgramValue_3A991D75E61455B66235B1724E50CDB1_terseLabel_en-US" xlink:label="lab_cgnx_StockRepurchaseProgramValue_3A991D75E61455B66235B1724E50CDB1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares repurchased, value</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_StockRepurchaseProgramValue" xlink:label="loc_cgnx_StockRepurchaseProgramValue_3A991D75E61455B66235B1724E50CDB1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_StockRepurchaseProgramValue_3A991D75E61455B66235B1724E50CDB1" xlink:to="lab_cgnx_StockRepurchaseProgramValue_3A991D75E61455B66235B1724E50CDB1" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodShares_F88BD21FD71A21A17D2CB1724E503614_verboseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodShares_F88BD21FD71A21A17D2CB1724E503614" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Repurchase of common stock (in shares)</link:label>
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodShares_F88BD21FD71A21A17D2CB1724E503614_label_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodShares_F88BD21FD71A21A17D2CB1724E503614" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchased During Period, Shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares_F88BD21FD71A21A17D2CB1724E503614" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchasedDuringPeriodShares_F88BD21FD71A21A17D2CB1724E503614" xlink:to="lab_us-gaap_StockRepurchasedDuringPeriodShares_F88BD21FD71A21A17D2CB1724E503614" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodValue_F6AFC0336EDE6DC905B4B1724E50FF29_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodValue_F6AFC0336EDE6DC905B4B1724E50FF29" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock repurchased during period, value</link:label>
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodValue_F6AFC0336EDE6DC905B4B1724E50FF29_label_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodValue_F6AFC0336EDE6DC905B4B1724E50FF29" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchased During Period, Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue_F6AFC0336EDE6DC905B4B1724E50FF29" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchasedDuringPeriodValue_F6AFC0336EDE6DC905B4B1724E50FF29" xlink:to="lab_us-gaap_StockRepurchasedDuringPeriodValue_F6AFC0336EDE6DC905B4B1724E50FF29" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_F1BE60FFD53B2E696445B1724E512DD6_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_F1BE60FFD53B2E696445B1724E512DD6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock repurchase program, remaining authorized repurchase amount</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_F1BE60FFD53B2E696445B1724E512DD6_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_F1BE60FFD53B2E696445B1724E512DD6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Remaining Authorized Repurchase Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:label="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_F1BE60FFD53B2E696445B1724E512DD6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_F1BE60FFD53B2E696445B1724E512DD6" xlink:to="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_F1BE60FFD53B2E696445B1724E512DD6" xlink:type="arc" />
    <link:label id="lab_us-gaap_CompensationRelatedCostsGeneralTextBlock_9313327BB0017F93805794A14EA1E24D_terseLabel_en-US" xlink:label="lab_us-gaap_CompensationRelatedCostsGeneralTextBlock_6B760275C3FA5C3CBA265695C49C91FB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock-Based Compensation Expense</link:label>
    <link:label id="lab_us-gaap_CompensationRelatedCostsGeneralTextBlock_9313327BB0017F93805794A14EA1E24D_label_en-US" xlink:label="lab_us-gaap_CompensationRelatedCostsGeneralTextBlock_6B760275C3FA5C3CBA265695C49C91FB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Compensation Related Costs, General [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CompensationRelatedCostsGeneralTextBlock" xlink:label="loc_us-gaap_CompensationRelatedCostsGeneralTextBlock_6B760275C3FA5C3CBA265695C49C91FB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationRelatedCostsGeneralTextBlock_6B760275C3FA5C3CBA265695C49C91FB" xlink:to="lab_us-gaap_CompensationRelatedCostsGeneralTextBlock_6B760275C3FA5C3CBA265695C49C91FB" xlink:type="arc" />
    <link:label id="lab_us-gaap_MovementInDeferredRevenueRollForward_2F452DB85F12851E2C24AD8C6A8A43E4_terseLabel_en-US" xlink:label="lab_us-gaap_MovementInDeferredRevenueRollForward_2F452DB85F12851E2C24AD8C6A8A43E4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Movement in Deferred Revenue [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_MovementInDeferredRevenueRollForward_2F452DB85F12851E2C24AD8C6A8A43E4_label_en-US" xlink:label="lab_us-gaap_MovementInDeferredRevenueRollForward_2F452DB85F12851E2C24AD8C6A8A43E4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Movement in Deferred Revenue [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MovementInDeferredRevenueRollForward" xlink:label="loc_us-gaap_MovementInDeferredRevenueRollForward_2F452DB85F12851E2C24AD8C6A8A43E4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward_2F452DB85F12851E2C24AD8C6A8A43E4" xlink:to="lab_us-gaap_MovementInDeferredRevenueRollForward_2F452DB85F12851E2C24AD8C6A8A43E4" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredRevenue_CB502B93B1523704CB17AD8C6A8A1714_periodStartLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenue_CB502B93B1523704CB17AD8C6A8A1714" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance as of December 31, 2017</link:label>
    <link:label id="lab_us-gaap_DeferredRevenue_CB502B93B1523704CB17AD8C6A8A1714_label_en-US" xlink:label="lab_us-gaap_DeferredRevenue_CB502B93B1523704CB17AD8C6A8A1714" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenue" xlink:label="loc_us-gaap_DeferredRevenue_CB502B93B1523704CB17AD8C6A8A1714" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenue_CB502B93B1523704CB17AD8C6A8A1714" xlink:to="lab_us-gaap_DeferredRevenue_CB502B93B1523704CB17AD8C6A8A1714" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredRevenueAdditions_BC26C10FA06633F2D51CAD8C6A8E21AC_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenueAdditions_BC26C10FA06633F2D51CAD8C6A8E21AC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increases to deferred revenue and customer deposits</link:label>
    <link:label id="lab_us-gaap_DeferredRevenueAdditions_BC26C10FA06633F2D51CAD8C6A8E21AC_label_en-US" xlink:label="lab_us-gaap_DeferredRevenueAdditions_BC26C10FA06633F2D51CAD8C6A8E21AC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue, Additions</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenueAdditions" xlink:label="loc_us-gaap_DeferredRevenueAdditions_BC26C10FA06633F2D51CAD8C6A8E21AC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueAdditions_BC26C10FA06633F2D51CAD8C6A8E21AC" xlink:to="lab_us-gaap_DeferredRevenueAdditions_BC26C10FA06633F2D51CAD8C6A8E21AC" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredRevenueRevenueRecognized1_C721F2EF637C2C5803CBAD8C6A8EA244_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenueRevenueRecognized1_C721F2EF637C2C5803CBAD8C6A8EA244" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Recognition of revenue</link:label>
    <link:label id="lab_us-gaap_DeferredRevenueRevenueRecognized1_C721F2EF637C2C5803CBAD8C6A8EA244_label_en-US" xlink:label="lab_us-gaap_DeferredRevenueRevenueRecognized1_C721F2EF637C2C5803CBAD8C6A8EA244" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue, Revenue Recognized</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenueRevenueRecognized1" xlink:label="loc_us-gaap_DeferredRevenueRevenueRecognized1_C721F2EF637C2C5803CBAD8C6A8EA244" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueRevenueRecognized1_C721F2EF637C2C5803CBAD8C6A8EA244" xlink:to="lab_us-gaap_DeferredRevenueRevenueRecognized1_C721F2EF637C2C5803CBAD8C6A8EA244" xlink:type="arc" />
    <link:label id="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_DB966FEF894CC906939AAD8C6A8E267C_terseLabel_en-US" xlink:label="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_DB966FEF894CC906939AAD8C6A8E267C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign exchange rate changes</link:label>
    <link:label id="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_DB966FEF894CC906939AAD8C6A8E267C_label_en-US" xlink:label="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_DB966FEF894CC906939AAD8C6A8E267C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue, Foreign Currency Exchange Adjustment</link:label>
    <link:label id="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_DB966FEF894CC906939AAD8C6A8E267C_documentation_en-US" xlink:label="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_DB966FEF894CC906939AAD8C6A8E267C" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Deferred Revenue, Foreign Currency Exchange Adjustment</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment" xlink:label="loc_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_DB966FEF894CC906939AAD8C6A8E267C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_DB966FEF894CC906939AAD8C6A8E267C" xlink:to="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_DB966FEF894CC906939AAD8C6A8E267C" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredRevenue_CEB7374C379253B2CB59AD8C6A8F3E07_periodEndLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenue_CEB7374C379253B2CB59AD8C6A8F3E07" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance as of September 30, 2018</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenue" xlink:label="loc_us-gaap_DeferredRevenue_CEB7374C379253B2CB59AD8C6A8F3E07" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenue_CEB7374C379253B2CB59AD8C6A8F3E07" xlink:to="lab_us-gaap_DeferredRevenue_CEB7374C379253B2CB59AD8C6A8F3E07" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_14990AC92E5563F15AA594A14FC6B559_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock_7A7D145A04305F5895018F58676303A8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted-Average Shares</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_14990AC92E5563F15AA594A14FC6B559_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock_7A7D145A04305F5895018F58676303A8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_7A7D145A04305F5895018F58676303A8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareTextBlock_7A7D145A04305F5895018F58676303A8" xlink:to="lab_us-gaap_EarningsPerShareTextBlock_7A7D145A04305F5895018F58676303A8" xlink:type="arc" />
    <link:label id="lab_us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock_0A0BC702A2D0462F274494A14EFD929B_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock_863D881801F951B79D1807C13B88F205" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash, Cash Equivalents, and Investments</link:label>
    <link:label id="lab_us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock_0A0BC702A2D0462F274494A14EFD929B_label_en-US" xlink:label="lab_us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock_863D881801F951B79D1807C13B88F205" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments in Debt and Equity Instruments, Cash and Cash Equivalents, Unrealized and Realized Gains (Losses) [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock" xlink:label="loc_us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock_863D881801F951B79D1807C13B88F205" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock_863D881801F951B79D1807C13B88F205" xlink:to="lab_us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock_863D881801F951B79D1807C13B88F205" xlink:type="arc" />
    <link:label id="lab_us-gaap_SovereignDebtMember_3F69505AFF533B55C70DA7EA28419B55_terseLabel_en-US" xlink:label="lab_us-gaap_SovereignDebtMember_3F69505AFF533B55C70DA7EA28419B55" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sovereign Debt [Member]</link:label>
    <link:label id="lab_us-gaap_SovereignDebtMember_3F69505AFF533B55C70DA7EA28419B55_label_en-US" xlink:label="lab_us-gaap_SovereignDebtMember_3F69505AFF533B55C70DA7EA28419B55" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sovereign Debt [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtMember" xlink:label="loc_us-gaap_SovereignDebtMember_3F69505AFF533B55C70DA7EA28419B55" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SovereignDebtMember_3F69505AFF533B55C70DA7EA28419B55" xlink:to="lab_us-gaap_SovereignDebtMember_3F69505AFF533B55C70DA7EA28419B55" xlink:type="arc" />
    <link:label id="lab_us-gaap_Cash_6819883AF5ADB0886C62A7E494BE1B85_terseLabel_en-US" xlink:label="lab_us-gaap_Cash_6819883AF5ADB0886C62A7E494BE1B85" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash</link:label>
    <link:label id="lab_us-gaap_Cash_6819883AF5ADB0886C62A7E494BE1B85_label_en-US" xlink:label="lab_us-gaap_Cash_6819883AF5ADB0886C62A7E494BE1B85" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Cash" xlink:label="loc_us-gaap_Cash_6819883AF5ADB0886C62A7E494BE1B85" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Cash_6819883AF5ADB0886C62A7E494BE1B85" xlink:to="lab_us-gaap_Cash_6819883AF5ADB0886C62A7E494BE1B85" xlink:type="arc" />
    <link:label id="lab_us-gaap_MoneyMarketFundsAtCarryingValue_6571BAF2EF03ED2814A5A7E494BFE168_terseLabel_en-US" xlink:label="lab_us-gaap_MoneyMarketFundsAtCarryingValue_6571BAF2EF03ED2814A5A7E494BFE168" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Money market instruments</link:label>
    <link:label id="lab_us-gaap_MoneyMarketFundsAtCarryingValue_6571BAF2EF03ED2814A5A7E494BFE168_label_en-US" xlink:label="lab_us-gaap_MoneyMarketFundsAtCarryingValue_6571BAF2EF03ED2814A5A7E494BFE168" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Money Market Funds, at Carrying Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MoneyMarketFundsAtCarryingValue" xlink:label="loc_us-gaap_MoneyMarketFundsAtCarryingValue_6571BAF2EF03ED2814A5A7E494BFE168" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MoneyMarketFundsAtCarryingValue_6571BAF2EF03ED2814A5A7E494BFE168" xlink:to="lab_us-gaap_MoneyMarketFundsAtCarryingValue_6571BAF2EF03ED2814A5A7E494BFE168" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_C0E27DE771F376F27B92A7E494BF84FE_totalLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_C0E27DE771F376F27B92A7E494BF84FE" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_C0E27DE771F376F27B92A7E494BF84FE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_C0E27DE771F376F27B92A7E494BF84FE" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_C0E27DE771F376F27B92A7E494BF84FE" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_700A57F2F3CE772EE147A7E494BF894A_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_700A57F2F3CE772EE147A7E494BF894A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term investments</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_700A57F2F3CE772EE147A7E494BF894A_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_700A57F2F3CE772EE147A7E494BF894A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Debt Securities, Noncurrent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_700A57F2F3CE772EE147A7E494BF894A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_700A57F2F3CE772EE147A7E494BF894A" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_700A57F2F3CE772EE147A7E494BF894A" xlink:type="arc" />
    <link:label id="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B_totalLabel_en-US" xlink:label="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:label id="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B_label_en-US" xlink:label="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Cash Equivalents Short Term And Long Term Investments</link:label>
    <link:label id="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B_documentation_en-US" xlink:label="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Cash, cash equivalents, short term and long term investments.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_CashCashEquivalentsShortTermAndLongTermInvestments" xlink:label="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B" xlink:to="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B" xlink:type="arc" />
    <link:label id="lab_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment Type [Axis]</link:label>
    <link:label id="lab_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657_label_en-US" xlink:label="lab_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment Type [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentTypeAxis" xlink:label="loc_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657" xlink:to="lab_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657" xlink:type="arc" />
    <link:label id="lab_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investments [Domain]</link:label>
    <link:label id="lab_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227_label_en-US" xlink:label="lab_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:to="lab_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShortTermInvestmentsMember_E662976120854C9351B3ACE68FEF94EE_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermInvestmentsMember_E662976120854C9351B3ACE68FEF94EE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Short-Term Investments</link:label>
    <link:label id="lab_us-gaap_ShortTermInvestmentsMember_E662976120854C9351B3ACE68FEF94EE_label_en-US" xlink:label="lab_us-gaap_ShortTermInvestmentsMember_E662976120854C9351B3ACE68FEF94EE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-term Investments [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShortTermInvestmentsMember" xlink:label="loc_us-gaap_ShortTermInvestmentsMember_E662976120854C9351B3ACE68FEF94EE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermInvestmentsMember_E662976120854C9351B3ACE68FEF94EE" xlink:to="lab_us-gaap_ShortTermInvestmentsMember_E662976120854C9351B3ACE68FEF94EE" xlink:type="arc" />
    <link:label id="lab_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3_terseLabel_en-US" xlink:label="lab_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-Term Investments</link:label>
    <link:label id="lab_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3_label_en-US" xlink:label="lab_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long Term Investments [Member]</link:label>
    <link:label id="lab_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3_documentation_en-US" xlink:label="lab_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Long-term investments.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_LongTermInvestmentsMember" xlink:label="loc_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3" xlink:to="lab_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_DC0CC5251D0271EECF3FACE68FF0C824_totalLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_DC0CC5251D0271EECF3FACE68FF0C824" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Amortized cost</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_DC0CC5251D0271EECF3FACE68FF0C824_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_DC0CC5251D0271EECF3FACE68FF0C824" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Debt Securities, Amortized Cost Basis</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_DC0CC5251D0271EECF3FACE68FF0C824" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_DC0CC5251D0271EECF3FACE68FF0C824" xlink:to="lab_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_DC0CC5251D0271EECF3FACE68FF0C824" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_FF1C20E74C0828B25FFEACE68FF037A0_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_FF1C20E74C0828B25FFEACE68FF037A0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross unrealized gains</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_FF1C20E74C0828B25FFEACE68FF037A0_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_FF1C20E74C0828B25FFEACE68FF037A0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Debt Securities, Accumulated Gross Unrealized Gain, before Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_FF1C20E74C0828B25FFEACE68FF037A0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_FF1C20E74C0828B25FFEACE68FF037A0" xlink:to="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_FF1C20E74C0828B25FFEACE68FF037A0" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5E1A767B4C9E19518C06ACE68FF0D278_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5E1A767B4C9E19518C06ACE68FF0D278" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Gross unrealized losses</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5E1A767B4C9E19518C06ACE68FF0D278" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5E1A767B4C9E19518C06ACE68FF0D278" xlink:to="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5E1A767B4C9E19518C06ACE68FF0D278" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecurities_C5FF0D43AD4B76AD74CAACE68FF0B268_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecurities_C5FF0D43AD4B76AD74CAACE68FF0B268" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair value</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecurities_C5FF0D43AD4B76AD74CAACE68FF0B268_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecurities_C5FF0D43AD4B76AD74CAACE68FF0B268" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecurities_C5FF0D43AD4B76AD74CAACE68FF0B268" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecurities_C5FF0D43AD4B76AD74CAACE68FF0B268" xlink:to="lab_us-gaap_AvailableForSaleSecurities_C5FF0D43AD4B76AD74CAACE68FF0B268" xlink:type="arc" />
    <link:label id="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_2470AC184F432DD167FFADF76A9DDEE7_terseLabel_en-US" xlink:label="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_FEF026551DC35E93A92477770CA538C3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Movement in Standard Product Warranty Accrual [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_2470AC184F432DD167FFADF76A9DDEE7_label_en-US" xlink:label="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_FEF026551DC35E93A92477770CA538C3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Movement in Standard Product Warranty Accrual [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MovementInStandardProductWarrantyAccrualRollForward" xlink:label="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_FEF026551DC35E93A92477770CA538C3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_FEF026551DC35E93A92477770CA538C3" xlink:to="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_FEF026551DC35E93A92477770CA538C3" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_7A91416B17D313149A5CADF76A9D57BC_periodStartLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual_210329DBE6AA51EBA5360B36D9594F74" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Beginning balance</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_7A91416B17D313149A5CADF76A9D57BC_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual_210329DBE6AA51EBA5360B36D9594F74" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard and Extended Product Warranty Accrual</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="loc_us-gaap_ProductWarrantyAccrual_210329DBE6AA51EBA5360B36D9594F74" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrual_210329DBE6AA51EBA5360B36D9594F74" xlink:to="lab_us-gaap_ProductWarrantyAccrual_210329DBE6AA51EBA5360B36D9594F74" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued_40F89C2325C9B7B5AD4DADF76A9EAD5A_verboseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued_F18E50DFD9C252FCA23C133BDC27DBAC" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Provisions for warranties issued during the period</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued_40F89C2325C9B7B5AD4DADF76A9EAD5A_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued_F18E50DFD9C252FCA23C133BDC27DBAC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard and Extended Product Warranty Accrual, Increase for Warranties Issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:label="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued_F18E50DFD9C252FCA23C133BDC27DBAC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued_F18E50DFD9C252FCA23C133BDC27DBAC" xlink:to="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued_F18E50DFD9C252FCA23C133BDC27DBAC" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProductWarrantyAccrualPayments_BFE87C2E8CA5738E1F98ADF76A9E237A_negatedLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualPayments_C4DF68DA56825AFDA683E5FB4EA364B3" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Fulfillment of warranty obligations</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualPayments_BFE87C2E8CA5738E1F98ADF76A9E237A_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualPayments_C4DF68DA56825AFDA683E5FB4EA364B3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard and Extended Product Warranty Accrual, Decrease for Payments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantyAccrualPayments" xlink:label="loc_us-gaap_ProductWarrantyAccrualPayments_C4DF68DA56825AFDA683E5FB4EA364B3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualPayments_C4DF68DA56825AFDA683E5FB4EA364B3" xlink:to="lab_us-gaap_ProductWarrantyAccrualPayments_C4DF68DA56825AFDA683E5FB4EA364B3" xlink:type="arc" />
    <link:label id="lab_us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss_2B035D156EBC680272C1ADF76A9E4E5B_terseLabel_en-US" xlink:label="lab_us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss_4BD3D6BBB83D5B1A89CEF5F81FBCAD23" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign exchange rate changes</link:label>
    <link:label id="lab_us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss_2B035D156EBC680272C1ADF76A9E4E5B_label_en-US" xlink:label="lab_us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss_4BD3D6BBB83D5B1A89CEF5F81FBCAD23" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard and Extended Product Warranty Accrual, Foreign Currency Translation Gain (Loss)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss" xlink:label="loc_us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss_4BD3D6BBB83D5B1A89CEF5F81FBCAD23" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss_4BD3D6BBB83D5B1A89CEF5F81FBCAD23" xlink:to="lab_us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss_4BD3D6BBB83D5B1A89CEF5F81FBCAD23" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_6ADF91E53DB73ECE5704ADF76A9E2438_periodEndLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual_F820C80ACE255872931E004F0E0550F0" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Ending balance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="loc_us-gaap_ProductWarrantyAccrual_F820C80ACE255872931E004F0E0550F0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrual_F820C80ACE255872931E004F0E0550F0" xlink:to="lab_us-gaap_ProductWarrantyAccrual_F820C80ACE255872931E004F0E0550F0" xlink:type="arc" />
    <link:label id="lab_cgnx_OutstandingForwardContractsTableTextBlock_B374C1AE5C668B89EDA7A9D96A6EB1C3_terseLabel_en-US" xlink:label="lab_cgnx_OutstandingForwardContractsTableTextBlock_A6883D4570B95782945872F9B9DBB145" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding Forward Contracts Table</link:label>
    <link:label id="lab_cgnx_OutstandingForwardContractsTableTextBlock_B374C1AE5C668B89EDA7A9D96A6EB1C3_label_en-US" xlink:label="lab_cgnx_OutstandingForwardContractsTableTextBlock_A6883D4570B95782945872F9B9DBB145" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Outstanding Forward Contracts [Table Text Block]</link:label>
    <link:label id="lab_cgnx_OutstandingForwardContractsTableTextBlock_B374C1AE5C668B89EDA7A9D96A6EB1C3_documentation_en-US" xlink:label="lab_cgnx_OutstandingForwardContractsTableTextBlock_A6883D4570B95782945872F9B9DBB145" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Outstanding forward contracts table.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_OutstandingForwardContractsTableTextBlock" xlink:label="loc_cgnx_OutstandingForwardContractsTableTextBlock_A6883D4570B95782945872F9B9DBB145" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_OutstandingForwardContractsTableTextBlock_A6883D4570B95782945872F9B9DBB145" xlink:to="lab_cgnx_OutstandingForwardContractsTableTextBlock_A6883D4570B95782945872F9B9DBB145" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_0F7B08BEE5F1F86AC541A9D96A6F5AA2_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_7F815FDAD15752A5A77D6EDBE96548A8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Derivative Instruments in Statement of Financial Position, Fair Value</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_0F7B08BEE5F1F86AC541A9D96A6F5AA2_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_7F815FDAD15752A5A77D6EDBE96548A8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Derivative Instruments in Statement of Financial Position, Fair Value [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_7F815FDAD15752A5A77D6EDBE96548A8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_7F815FDAD15752A5A77D6EDBE96548A8" xlink:to="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_7F815FDAD15752A5A77D6EDBE96548A8" xlink:type="arc" />
    <link:label id="lab_us-gaap_OffsettingAssetsTableTextBlock_4B274AFC23F5C98C55B8A9D96A704184_terseLabel_en-US" xlink:label="lab_us-gaap_OffsettingAssetsTableTextBlock_A965C8F8CB9D53FB89F91C842B7193B6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Offsetting Assets</link:label>
    <link:label id="lab_us-gaap_OffsettingAssetsTableTextBlock_4B274AFC23F5C98C55B8A9D96A704184_label_en-US" xlink:label="lab_us-gaap_OffsettingAssetsTableTextBlock_A965C8F8CB9D53FB89F91C842B7193B6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Offsetting Assets [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OffsettingAssetsTableTextBlock" xlink:label="loc_us-gaap_OffsettingAssetsTableTextBlock_A965C8F8CB9D53FB89F91C842B7193B6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OffsettingAssetsTableTextBlock_A965C8F8CB9D53FB89F91C842B7193B6" xlink:to="lab_us-gaap_OffsettingAssetsTableTextBlock_A965C8F8CB9D53FB89F91C842B7193B6" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_48A3DF6283B81C608CEBA9D96A70AE3E_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_8E4C8028E4275D01A9AA052CE28F6A17" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss)</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_48A3DF6283B81C608CEBA9D96A70AE3E_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_8E4C8028E4275D01A9AA052CE28F6A17" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_8E4C8028E4275D01A9AA052CE28F6A17" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_8E4C8028E4275D01A9AA052CE28F6A17" xlink:to="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_8E4C8028E4275D01A9AA052CE28F6A17" xlink:type="arc" />
    <link:label id="lab_us-gaap_CapitalizedContractCostGross_7C3C56BD6D22C75F8CD0AD8DCC87CD10_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostGross_7C3C56BD6D22C75F8CD0AD8DCC87CD10" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Costs to fulfill contract</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostGross_7C3C56BD6D22C75F8CD0AD8DCC87CD10_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostGross_7C3C56BD6D22C75F8CD0AD8DCC87CD10" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capitalized Contract Cost, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CapitalizedContractCostGross" xlink:label="loc_us-gaap_CapitalizedContractCostGross_7C3C56BD6D22C75F8CD0AD8DCC87CD10" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostGross_7C3C56BD6D22C75F8CD0AD8DCC87CD10" xlink:to="lab_us-gaap_CapitalizedContractCostGross_7C3C56BD6D22C75F8CD0AD8DCC87CD10" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_6117A8926AF211D7CD2094A1502DB49C_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_4E3EC12E9AD75EF1A667BDA9BF13914D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_4E3EC12E9AD75EF1A667BDA9BF13914D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_4E3EC12E9AD75EF1A667BDA9BF13914D" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_4E3EC12E9AD75EF1A667BDA9BF13914D" xlink:type="arc" />
    <link:label id="lab_us-gaap_CostOfGoodsTotalMember_F5880FAB2C7523D67D7D94A1502F7A28_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsTotalMember_77859B10CB625A1D80CC9F9973D76273" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of Revenue</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsTotalMember_F5880FAB2C7523D67D7D94A1502F7A28_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsTotalMember_77859B10CB625A1D80CC9F9973D76273" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of Goods, Total [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CostOfGoodsTotalMember" xlink:label="loc_us-gaap_CostOfGoodsTotalMember_77859B10CB625A1D80CC9F9973D76273" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsTotalMember_77859B10CB625A1D80CC9F9973D76273" xlink:to="lab_us-gaap_CostOfGoodsTotalMember_77859B10CB625A1D80CC9F9973D76273" xlink:type="arc" />
    <link:label id="lab_cgnx_SellingGeneralAndAdministrativeMember_FEF514AB20A011E84DA594A1502F59D7_terseLabel_en-US" xlink:label="lab_cgnx_SellingGeneralAndAdministrativeMember_D96969D4008D5B7A8EB9A1449732989D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Selling, General, and Administrative</link:label>
    <link:label id="lab_cgnx_SellingGeneralAndAdministrativeMember_FEF514AB20A011E84DA594A1502F59D7_label_en-US" xlink:label="lab_cgnx_SellingGeneralAndAdministrativeMember_D96969D4008D5B7A8EB9A1449732989D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling General And Administrative [Member]</link:label>
    <link:label id="lab_cgnx_SellingGeneralAndAdministrativeMember_FEF514AB20A011E84DA594A1502F59D7_documentation_en-US" xlink:label="lab_cgnx_SellingGeneralAndAdministrativeMember_D96969D4008D5B7A8EB9A1449732989D" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Selling, general, and administrative.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_SellingGeneralAndAdministrativeMember" xlink:label="loc_cgnx_SellingGeneralAndAdministrativeMember_D96969D4008D5B7A8EB9A1449732989D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_SellingGeneralAndAdministrativeMember_D96969D4008D5B7A8EB9A1449732989D" xlink:to="lab_cgnx_SellingGeneralAndAdministrativeMember_D96969D4008D5B7A8EB9A1449732989D" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_5DEBA24C4AB8AB14A86894A1502FF989_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_BB2A028FAF575366A23166B67E126F83" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_5DEBA24C4AB8AB14A86894A1502FF989_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_BB2A028FAF575366A23166B67E126F83" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_BB2A028FAF575366A23166B67E126F83" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_BB2A028FAF575366A23166B67E126F83" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_BB2A028FAF575366A23166B67E126F83" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90_terseLabel_en-US" xlink:label="lab_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement [Table]</link:label>
    <link:label id="lab_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90_label_en-US" xlink:label="lab_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90" xlink:to="lab_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B_terseLabel_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B_label_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B" xlink:to="lab_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B" xlink:type="arc" />
    <link:label id="lab_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837_terseLabel_en-US" xlink:label="lab_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:label id="lab_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837_label_en-US" xlink:label="lab_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:to="lab_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockMember_84A3A6067236A394DDA3A2DC9D23EDF2_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember_84A3A6067236A394DDA3A2DC9D23EDF2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_84A3A6067236A394DDA3A2DC9D23EDF2_label_en-US" xlink:label="lab_us-gaap_CommonStockMember_84A3A6067236A394DDA3A2DC9D23EDF2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_84A3A6067236A394DDA3A2DC9D23EDF2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember_84A3A6067236A394DDA3A2DC9D23EDF2" xlink:to="lab_us-gaap_CommonStockMember_84A3A6067236A394DDA3A2DC9D23EDF2" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_B6F92FD4A17870163763A2DC9D23184E_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember_B6F92FD4A17870163763A2DC9D23184E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additional Paid-in Capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_B6F92FD4A17870163763A2DC9D23184E_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember_B6F92FD4A17870163763A2DC9D23184E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_B6F92FD4A17870163763A2DC9D23184E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember_B6F92FD4A17870163763A2DC9D23184E" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember_B6F92FD4A17870163763A2DC9D23184E" xlink:type="arc" />
    <link:label id="lab_us-gaap_RetainedEarningsMember_957F52071C30951120D2A2DC9D23A494_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember_957F52071C30951120D2A2DC9D23A494" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Retained Earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsMember_957F52071C30951120D2A2DC9D23A494_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember_957F52071C30951120D2A2DC9D23A494" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_957F52071C30951120D2A2DC9D23A494" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember_957F52071C30951120D2A2DC9D23A494" xlink:to="lab_us-gaap_RetainedEarningsMember_957F52071C30951120D2A2DC9D23A494" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_20EE3DBCA908B4CFF1CCA2DC9D245B91_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_20EE3DBCA908B4CFF1CCA2DC9D245B91" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accumulated Other Comprehensive Loss</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_20EE3DBCA908B4CFF1CCA2DC9D245B91_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_20EE3DBCA908B4CFF1CCA2DC9D245B91" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_20EE3DBCA908B4CFF1CCA2DC9D245B91" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_20EE3DBCA908B4CFF1CCA2DC9D245B91" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_20EE3DBCA908B4CFF1CCA2DC9D245B91" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716_terseLabel_en-US" xlink:label="lab_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:label id="lab_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716_label_en-US" xlink:label="lab_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716" xlink:to="lab_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockSharesIssued_BEB7D3649FD61092C354A2DC9D2A8540_periodStartLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued_BEB7D3649FD61092C354A2DC9D2A8540" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Beginning Balance (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_BEB7D3649FD61092C354A2DC9D2A8540_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued_BEB7D3649FD61092C354A2DC9D2A8540" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Shares, Issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_BEB7D3649FD61092C354A2DC9D2A8540" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued_BEB7D3649FD61092C354A2DC9D2A8540" xlink:to="lab_us-gaap_CommonStockSharesIssued_BEB7D3649FD61092C354A2DC9D2A8540" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquity_804B09B9C6F9DC3BE51AA2DC9D2A6032_periodStartLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity_804B09B9C6F9DC3BE51AA2DC9D2A6032" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Beginning Balance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_804B09B9C6F9DC3BE51AA2DC9D2A6032" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity_804B09B9C6F9DC3BE51AA2DC9D2A6032" xlink:to="lab_us-gaap_StockholdersEquity_804B09B9C6F9DC3BE51AA2DC9D2A6032" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_37FB51A778471E21906AA2DC9D2AE01B_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_37FB51A778471E21906AA2DC9D2AE01B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Issuance of common stock under stock plans (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_37FB51A778471E21906AA2DC9D2AE01B_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_37FB51A778471E21906AA2DC9D2AE01B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Shares Issued in Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_37FB51A778471E21906AA2DC9D2AE01B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_37FB51A778471E21906AA2DC9D2AE01B" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_37FB51A778471E21906AA2DC9D2AE01B" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_16204B7177111D4D159DA2DC9D2A65F6_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_16204B7177111D4D159DA2DC9D2A65F6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Issuance of common stock under stock plans</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_16204B7177111D4D159DA2DC9D2A65F6_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_16204B7177111D4D159DA2DC9D2A65F6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Issued During Period, Value, Stock Options Exercised</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_16204B7177111D4D159DA2DC9D2A65F6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_16204B7177111D4D159DA2DC9D2A65F6" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_16204B7177111D4D159DA2DC9D2A65F6" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodShares_E412DB9096B2B29F8557A2DC9D2A7B43_negatedLabel_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodShares_E412DB9096B2B29F8557A2DC9D2A7B43" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Repurchase of common stock (in shares)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares_E412DB9096B2B29F8557A2DC9D2A7B43" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchasedDuringPeriodShares_E412DB9096B2B29F8557A2DC9D2A7B43" xlink:to="lab_us-gaap_StockRepurchasedDuringPeriodShares_E412DB9096B2B29F8557A2DC9D2A7B43" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodValue_57A5963EEB1B86D6749DA2DC9D2A4377_negatedLabel_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodValue_57A5963EEB1B86D6749DA2DC9D2A4377" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Repurchase of common stock</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue_57A5963EEB1B86D6749DA2DC9D2A4377" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchasedDuringPeriodValue_57A5963EEB1B86D6749DA2DC9D2A4377" xlink:to="lab_us-gaap_StockRepurchasedDuringPeriodValue_57A5963EEB1B86D6749DA2DC9D2A4377" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7510CC8F06F8A50581DEA2DC9D2BF785_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7510CC8F06F8A50581DEA2DC9D2BF785" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock-based compensation expense</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7510CC8F06F8A50581DEA2DC9D2BF785_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7510CC8F06F8A50581DEA2DC9D2BF785" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7510CC8F06F8A50581DEA2DC9D2BF785" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7510CC8F06F8A50581DEA2DC9D2BF785" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7510CC8F06F8A50581DEA2DC9D2BF785" xlink:type="arc" />
    <link:label id="lab_us-gaap_DividendsCash_48C141D5DAFC06497E66A2DC9D2B9472_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DividendsCash_48C141D5DAFC06497E66A2DC9D2B9472" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Payment of dividends</link:label>
    <link:label id="lab_us-gaap_DividendsCash_48C141D5DAFC06497E66A2DC9D2B9472_label_en-US" xlink:label="lab_us-gaap_DividendsCash_48C141D5DAFC06497E66A2DC9D2B9472" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Dividends, Cash</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DividendsCash" xlink:label="loc_us-gaap_DividendsCash_48C141D5DAFC06497E66A2DC9D2B9472" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsCash_48C141D5DAFC06497E66A2DC9D2B9472" xlink:to="lab_us-gaap_DividendsCash_48C141D5DAFC06497E66A2DC9D2B9472" xlink:type="arc" />
    <link:label id="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_0A5CCEF394CCE2FB951CA2DC9D2B833F_terseLabel_en-US" xlink:label="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_0A5CCEF394CCE2FB951CA2DC9D2B833F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustment as a result of the adoption of ASU 2016-06 Income Taxes - Intra-Entity Transfers Other than Inventory (Note 12)</link:label>
    <link:label id="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_0A5CCEF394CCE2FB951CA2DC9D2B833F_label_en-US" xlink:label="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_0A5CCEF394CCE2FB951CA2DC9D2B833F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cumulative Effect of New Accounting Principle in Period of Adoption</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:label="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_0A5CCEF394CCE2FB951CA2DC9D2B833F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_0A5CCEF394CCE2FB951CA2DC9D2B833F" xlink:to="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_0A5CCEF394CCE2FB951CA2DC9D2B833F" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_0DB67CC8FF85FFA2F4F0A2DC9D2C1BE4_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_0DB67CC8FF85FFA2F4F0A2DC9D2C1BE4" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Net unrealized gain (loss) on available-for-sale investments, net of tax of ($82)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_0DB67CC8FF85FFA2F4F0A2DC9D2C1BE4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_0DB67CC8FF85FFA2F4F0A2DC9D2C1BE4" xlink:to="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_0DB67CC8FF85FFA2F4F0A2DC9D2C1BE4" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_B60B8DD90D824635F0B7A2DC9D2C40A5_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_B60B8DD90D824635F0B7A2DC9D2C40A5" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Reclassification of net realized (gain) loss on the sale of available-for-sale investments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_B60B8DD90D824635F0B7A2DC9D2C40A5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_B60B8DD90D824635F0B7A2DC9D2C40A5" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_B60B8DD90D824635F0B7A2DC9D2C40A5" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_0D89E48294C45F0306F1A2DC9D2CFF5E_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_0D89E48294C45F0306F1A2DC9D2CFF5E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency translation adjustment</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_0D89E48294C45F0306F1A2DC9D2CFF5E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_0D89E48294C45F0306F1A2DC9D2CFF5E" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_0D89E48294C45F0306F1A2DC9D2CFF5E" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockSharesIssued_20BC7A35687D58C2AC66A2DC9D2C80FB_periodEndLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued_20BC7A35687D58C2AC66A2DC9D2C80FB" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Ending Balance (in shares)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_20BC7A35687D58C2AC66A2DC9D2C80FB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued_20BC7A35687D58C2AC66A2DC9D2C80FB" xlink:to="lab_us-gaap_CommonStockSharesIssued_20BC7A35687D58C2AC66A2DC9D2C80FB" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquity_D305373BE98FF07D5954A2DC9D2C44E3_periodEndLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity_D305373BE98FF07D5954A2DC9D2C44E3" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Ending Balance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_D305373BE98FF07D5954A2DC9D2C44E3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity_D305373BE98FF07D5954A2DC9D2C44E3" xlink:to="lab_us-gaap_StockholdersEquity_D305373BE98FF07D5954A2DC9D2C44E3" xlink:type="arc" />
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_C898822D863FCA59FB9194A151AE06CB_label_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_1359DFAF22875524BFC9B9BC2AF72698" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_1359DFAF22875524BFC9B9BC2AF72698" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_1359DFAF22875524BFC9B9BC2AF72698" xlink:to="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_1359DFAF22875524BFC9B9BC2AF72698" xlink:type="arc" />
    <link:label id="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_FFA96C3A0B067E8013A694A151AE81BD_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_77B1869346B65C4581FF06D47D710650" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">New Pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_FFA96C3A0B067E8013A694A151AE81BD_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_77B1869346B65C4581FF06D47D710650" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements and Changes in Accounting Principles [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_77B1869346B65C4581FF06D47D710650" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_77B1869346B65C4581FF06D47D710650" xlink:to="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_77B1869346B65C4581FF06D47D710650" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C" xlink:type="arc" />
    <link:label id="lab_us-gaap_RestrictedStockMember_3B36FE48AC58299B06C8A2DC9C0B9B58_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockMember_3B36FE48AC58299B06C8A2DC9C0B9B58" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted Stock</link:label>
    <link:label id="lab_us-gaap_RestrictedStockMember_3B36FE48AC58299B06C8A2DC9C0B9B58_label_en-US" xlink:label="lab_us-gaap_RestrictedStockMember_3B36FE48AC58299B06C8A2DC9C0B9B58" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Stock [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="loc_us-gaap_RestrictedStockMember_3B36FE48AC58299B06C8A2DC9C0B9B58" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockMember_3B36FE48AC58299B06C8A2DC9C0B9B58" xlink:to="lab_us-gaap_RestrictedStockMember_3B36FE48AC58299B06C8A2DC9C0B9B58" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares (in thousands)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3DA463343875B6EEE566A2DC9C0CD188_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3DA463343875B6EEE566A2DC9C0CD188" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Nonvested, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3DA463343875B6EEE566A2DC9C0CD188_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3DA463343875B6EEE566A2DC9C0CD188" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3DA463343875B6EEE566A2DC9C0CD188" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3DA463343875B6EEE566A2DC9C0CD188" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3DA463343875B6EEE566A2DC9C0CD188" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_03FC66ACF1521F9D6B0FA2DC9C0C4242_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_03FC66ACF1521F9D6B0FA2DC9C0C4242" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Granted, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_03FC66ACF1521F9D6B0FA2DC9C0C4242_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_03FC66ACF1521F9D6B0FA2DC9C0C4242" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_03FC66ACF1521F9D6B0FA2DC9C0C4242" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_03FC66ACF1521F9D6B0FA2DC9C0C4242" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_03FC66ACF1521F9D6B0FA2DC9C0C4242" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_0E8F208756F0C938771BA2DC9C0CED47_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_0E8F208756F0C938771BA2DC9C0CED47" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Vested, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_0E8F208756F0C938771BA2DC9C0CED47_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_0E8F208756F0C938771BA2DC9C0CED47" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_0E8F208756F0C938771BA2DC9C0CED47" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_0E8F208756F0C938771BA2DC9C0CED47" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_0E8F208756F0C938771BA2DC9C0CED47" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_86F20B2CF79332D48E66A2DC9C0C30CA_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_86F20B2CF79332D48E66A2DC9C0C30CA" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Forfeited or expired, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_86F20B2CF79332D48E66A2DC9C0C30CA_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_86F20B2CF79332D48E66A2DC9C0C30CA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_86F20B2CF79332D48E66A2DC9C0C30CA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_86F20B2CF79332D48E66A2DC9C0C30CA" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_86F20B2CF79332D48E66A2DC9C0C30CA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_086CBF7D45628AAB08B4A2DC9C0DC59D_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_086CBF7D45628AAB08B4A2DC9C0DC59D" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Nonvested, shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_086CBF7D45628AAB08B4A2DC9C0DC59D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_086CBF7D45628AAB08B4A2DC9C0DC59D" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_086CBF7D45628AAB08B4A2DC9C0DC59D" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted-Average Grant Fair Value</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_AC7B2B1EEB15E68DB974A2DC9C0DA6BD_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_AC7B2B1EEB15E68DB974A2DC9C0DA6BD" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Nonvested, in dollars per share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_AC7B2B1EEB15E68DB974A2DC9C0DA6BD_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_AC7B2B1EEB15E68DB974A2DC9C0DA6BD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_AC7B2B1EEB15E68DB974A2DC9C0DA6BD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_AC7B2B1EEB15E68DB974A2DC9C0DA6BD" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_AC7B2B1EEB15E68DB974A2DC9C0DA6BD" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_46675EA292C1AC86DD42A2DC9C0DE2AD_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_46675EA292C1AC86DD42A2DC9C0DE2AD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Granted, in dollars per share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_46675EA292C1AC86DD42A2DC9C0DE2AD_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_46675EA292C1AC86DD42A2DC9C0DE2AD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_46675EA292C1AC86DD42A2DC9C0DE2AD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_46675EA292C1AC86DD42A2DC9C0DE2AD" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_46675EA292C1AC86DD42A2DC9C0DE2AD" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_99CD678C72716B594F87A2DC9C0D490F_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_99CD678C72716B594F87A2DC9C0D490F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vested, in dollars per share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_99CD678C72716B594F87A2DC9C0D490F_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_99CD678C72716B594F87A2DC9C0D490F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_99CD678C72716B594F87A2DC9C0D490F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_99CD678C72716B594F87A2DC9C0D490F" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_99CD678C72716B594F87A2DC9C0D490F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_E01ED4184AA3324D3ECAA2DC9C0ED3DA_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_E01ED4184AA3324D3ECAA2DC9C0ED3DA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forfeited or expired, in dollars per share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_E01ED4184AA3324D3ECAA2DC9C0ED3DA_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_E01ED4184AA3324D3ECAA2DC9C0ED3DA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_E01ED4184AA3324D3ECAA2DC9C0ED3DA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_E01ED4184AA3324D3ECAA2DC9C0ED3DA" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_E01ED4184AA3324D3ECAA2DC9C0ED3DA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_A003EDF6FE86418A2DB7A2DC9C0EFE7B_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_A003EDF6FE86418A2DB7A2DC9C0EFE7B" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Nonvested, in dollars per share</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_A003EDF6FE86418A2DB7A2DC9C0EFE7B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_A003EDF6FE86418A2DB7A2DC9C0EFE7B" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_A003EDF6FE86418A2DB7A2DC9C0EFE7B" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Aggregate Intrinsic Value (in thousands)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_FFBE01B26AE0C2FC88DAA2DC9C0EA237_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_FFBE01B26AE0C2FC88DAA2DC9C0EA237" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vested</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_FFBE01B26AE0C2FC88DAA2DC9C0EA237_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_FFBE01B26AE0C2FC88DAA2DC9C0EA237" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Vested</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_FFBE01B26AE0C2FC88DAA2DC9C0EA237" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_FFBE01B26AE0C2FC88DAA2DC9C0EA237" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_FFBE01B26AE0C2FC88DAA2DC9C0EA237" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested_3F4E4BA7A994A13FF5D2A2DC9C0E45F9_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested_3F4E4BA7A994A13FF5D2A2DC9C0E45F9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Nonvested as of September 30, 2018</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested_3F4E4BA7A994A13FF5D2A2DC9C0E45F9_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested_3F4E4BA7A994A13FF5D2A2DC9C0E45F9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Nonvested</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested_3F4E4BA7A994A13FF5D2A2DC9C0E45F9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested_3F4E4BA7A994A13FF5D2A2DC9C0E45F9" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested_3F4E4BA7A994A13FF5D2A2DC9C0E45F9" xlink:type="arc" />
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_2BDB2A8CE1065B1E221594A14F7E1594_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_D5FC95FCC9CE5F68BE1F0BBE72862779" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reserves for accounts receivable</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_2BDB2A8CE1065B1E221594A14F7E1594_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_D5FC95FCC9CE5F68BE1F0BBE72862779" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Allowance for Doubtful Accounts Receivable, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_D5FC95FCC9CE5F68BE1F0BBE72862779" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_D5FC95FCC9CE5F68BE1F0BBE72862779" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_D5FC95FCC9CE5F68BE1F0BBE72862779" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_E4891EBE71A6CDD67F3D94A14F7E2CD3_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare_B51576AE7C9A5DDAA3A72C13F1D7E4DD" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Common stock, par value</link:label>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_E4891EBE71A6CDD67F3D94A14F7E2CD3_label_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare_B51576AE7C9A5DDAA3A72C13F1D7E4DD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_B51576AE7C9A5DDAA3A72C13F1D7E4DD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare_B51576AE7C9A5DDAA3A72C13F1D7E4DD" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare_B51576AE7C9A5DDAA3A72C13F1D7E4DD" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_C223A62FD1D59C99CFCE94A14F7E9CBE_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized_4CF6F4DF5CB85DFF8FF30B3E5807A964" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, shares authorized</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_C223A62FD1D59C99CFCE94A14F7E9CBE_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized_4CF6F4DF5CB85DFF8FF30B3E5807A964" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Shares Authorized</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_4CF6F4DF5CB85DFF8FF30B3E5807A964" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized_4CF6F4DF5CB85DFF8FF30B3E5807A964" xlink:to="lab_us-gaap_CommonStockSharesAuthorized_4CF6F4DF5CB85DFF8FF30B3E5807A964" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockSharesIssued_5336C9C06A7A1727E9EF94A14F7EBD41_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued_0FB77BF727835DDBB6B7194D1350457B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, shares issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_0FB77BF727835DDBB6B7194D1350457B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued_0FB77BF727835DDBB6B7194D1350457B" xlink:to="lab_us-gaap_CommonStockSharesIssued_0FB77BF727835DDBB6B7194D1350457B" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A_terseLabel_en-US" xlink:label="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]</link:label>
    <link:label id="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A_label_en-US" xlink:label="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:label="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:to="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:type="arc" />
    <link:label id="lab_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9_terseLabel_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Balance Sheet Location [Axis]</link:label>
    <link:label id="lab_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9_label_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Balance Sheet Location [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9" xlink:to="lab_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9" xlink:type="arc" />
    <link:label id="lab_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48_terseLabel_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Balance Sheet Location [Domain]</link:label>
    <link:label id="lab_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48_label_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Balance Sheet Location [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:to="lab_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:type="arc" />
    <link:label id="lab_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_BD86C14793ADFC1ED3F0A6E296219568_terseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_BD86C14793ADFC1ED3F0A6E296219568" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Prepaid Expenses and Other Current Assets</link:label>
    <link:label id="lab_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_BD86C14793ADFC1ED3F0A6E296219568_label_en-US" xlink:label="lab_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_BD86C14793ADFC1ED3F0A6E296219568" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prepaid Expenses and Other Current Assets [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:label="loc_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_BD86C14793ADFC1ED3F0A6E296219568" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_BD86C14793ADFC1ED3F0A6E296219568" xlink:to="lab_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_BD86C14793ADFC1ED3F0A6E296219568" xlink:type="arc" />
    <link:label id="lab_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685_terseLabel_en-US" xlink:label="lab_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued Expenses</link:label>
    <link:label id="lab_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685_label_en-US" xlink:label="lab_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Expenses [Member]</link:label>
    <link:label id="lab_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685_documentation_en-US" xlink:label="lab_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Accrued expenses.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AccruedExpensesMember" xlink:label="loc_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685" xlink:to="lab_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivatives, Fair Value [Line Items]</link:label>
    <link:label id="lab_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0_label_en-US" xlink:label="lab_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivatives, Fair Value [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativesFairValueLineItems" xlink:label="loc_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:to="lab_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeAssets_EE452B951C3667126109A6E296210E1B_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssets_EE452B951C3667126109A6E296210E1B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative asset</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_EE452B951C3667126109A6E296210E1B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeAssets_EE452B951C3667126109A6E296210E1B" xlink:to="lab_us-gaap_DerivativeAssets_EE452B951C3667126109A6E296210E1B" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeLiabilities_71CD43CE6A71328D1432A6E296224F83_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities_71CD43CE6A71328D1432A6E296224F83" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_71CD43CE6A71328D1432A6E296224F83" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLiabilities_71CD43CE6A71328D1432A6E296224F83" xlink:to="lab_us-gaap_DerivativeLiabilities_71CD43CE6A71328D1432A6E296224F83" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Contingency [Table]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33_label_en-US" xlink:label="lab_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Contingency [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxContingencyTable" xlink:label="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:to="lab_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountingStandardsUpdate201616Member_E7AD08F60E65CCA9063FAD867116CCD6_terseLabel_en-US" xlink:label="lab_us-gaap_AccountingStandardsUpdate201616Member_E7AD08F60E65CCA9063FAD867116CCD6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Standards Update 2016-16</link:label>
    <link:label id="lab_us-gaap_AccountingStandardsUpdate201616Member_E7AD08F60E65CCA9063FAD867116CCD6_label_en-US" xlink:label="lab_us-gaap_AccountingStandardsUpdate201616Member_E7AD08F60E65CCA9063FAD867116CCD6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Standards Update 2016-16 [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201616Member" xlink:label="loc_us-gaap_AccountingStandardsUpdate201616Member_E7AD08F60E65CCA9063FAD867116CCD6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingStandardsUpdate201616Member_E7AD08F60E65CCA9063FAD867116CCD6" xlink:to="lab_us-gaap_AccountingStandardsUpdate201616Member_E7AD08F60E65CCA9063FAD867116CCD6" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Authority [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Authority [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91" xlink:to="lab_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Authority [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Authority [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:to="lab_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:type="arc" />
    <link:label id="lab_us-gaap_ForeignCountryMember_0C90F88793E2297D652CAD8671164032_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCountryMember_0C90F88793E2297D652CAD8671164032" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign Tax Authority</link:label>
    <link:label id="lab_us-gaap_ForeignCountryMember_0C90F88793E2297D652CAD8671164032_label_en-US" xlink:label="lab_us-gaap_ForeignCountryMember_0C90F88793E2297D652CAD8671164032" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Tax Authority [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCountryMember" xlink:label="loc_us-gaap_ForeignCountryMember_0C90F88793E2297D652CAD8671164032" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCountryMember_0C90F88793E2297D652CAD8671164032" xlink:to="lab_us-gaap_ForeignCountryMember_0C90F88793E2297D652CAD8671164032" xlink:type="arc" />
    <link:label id="lab_us-gaap_DomesticCountryMember_5B320C51C76206DF2714AD86711611FE_terseLabel_en-US" xlink:label="lab_us-gaap_DomesticCountryMember_5B320C51C76206DF2714AD86711611FE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Domestic Tax Authority</link:label>
    <link:label id="lab_us-gaap_DomesticCountryMember_5B320C51C76206DF2714AD86711611FE_label_en-US" xlink:label="lab_us-gaap_DomesticCountryMember_5B320C51C76206DF2714AD86711611FE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Domestic Tax Authority [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DomesticCountryMember" xlink:label="loc_us-gaap_DomesticCountryMember_5B320C51C76206DF2714AD86711611FE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DomesticCountryMember_5B320C51C76206DF2714AD86711611FE" xlink:to="lab_us-gaap_DomesticCountryMember_5B320C51C76206DF2714AD86711611FE" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Authority, Name [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Authority, Name [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0" xlink:to="lab_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Authority, Name [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Authority, Name [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:to="lab_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueCommissionersIrelandMember_54522111F3DEAE08D7B6AD86711640CC_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueCommissionersIrelandMember_54522111F3DEAE08D7B6AD86711640CC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue Commissioners, Ireland</link:label>
    <link:label id="lab_us-gaap_RevenueCommissionersIrelandMember_54522111F3DEAE08D7B6AD86711640CC_label_en-US" xlink:label="lab_us-gaap_RevenueCommissionersIrelandMember_54522111F3DEAE08D7B6AD86711640CC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue Commissioners, Ireland [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueCommissionersIrelandMember" xlink:label="loc_us-gaap_RevenueCommissionersIrelandMember_54522111F3DEAE08D7B6AD86711640CC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueCommissionersIrelandMember_54522111F3DEAE08D7B6AD86711640CC" xlink:to="lab_us-gaap_RevenueCommissionersIrelandMember_54522111F3DEAE08D7B6AD86711640CC" xlink:type="arc" />
    <link:label id="lab_us-gaap_StateAdministrationOfTaxationChinaMember_214E6F42FC1556243B75AD8671163680_terseLabel_en-US" xlink:label="lab_us-gaap_StateAdministrationOfTaxationChinaMember_214E6F42FC1556243B75AD8671163680" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">State Administration of Taxation, China</link:label>
    <link:label id="lab_us-gaap_StateAdministrationOfTaxationChinaMember_214E6F42FC1556243B75AD8671163680_label_en-US" xlink:label="lab_us-gaap_StateAdministrationOfTaxationChinaMember_214E6F42FC1556243B75AD8671163680" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">State Administration of Taxation, China [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StateAdministrationOfTaxationChinaMember" xlink:label="loc_us-gaap_StateAdministrationOfTaxationChinaMember_214E6F42FC1556243B75AD8671163680" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StateAdministrationOfTaxationChinaMember_214E6F42FC1556243B75AD8671163680" xlink:to="lab_us-gaap_StateAdministrationOfTaxationChinaMember_214E6F42FC1556243B75AD8671163680" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Contingency [Line Items]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF_label_en-US" xlink:label="lab_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Contingency [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxContingencyLineItems" xlink:label="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="lab_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:type="arc" />
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_C53E7BFC9A7848E96AE1AD8671163F3E_negatedLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_C53E7BFC9A7848E96AE1AD8671163F3E" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Decrease in effective tax rate</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_C53E7BFC9A7848E96AE1AD8671163F3E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_C53E7BFC9A7848E96AE1AD8671163F3E" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_C53E7BFC9A7848E96AE1AD8671163F3E" xlink:type="arc" />
    <link:label id="lab_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1_ED9338F877A98036993BAD867116AC69_terseLabel_en-US" xlink:label="lab_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1_ED9338F877A98036993BAD867116AC69" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cumulative effect on retained earnings, net of tax</link:label>
    <link:label id="lab_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1_ED9338F877A98036993BAD867116AC69_label_en-US" xlink:label="lab_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1_ED9338F877A98036993BAD867116AC69" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cumulative Effect on Retained Earnings, Net of Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1" xlink:label="loc_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1_ED9338F877A98036993BAD867116AC69" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1_ED9338F877A98036993BAD867116AC69" xlink:to="lab_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1_ED9338F877A98036993BAD867116AC69" xlink:type="arc" />
    <link:label id="lab_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_9B39CBE1D0FDBB8A5B96AD867116FA94_terseLabel_en-US" xlink:label="lab_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_9B39CBE1D0FDBB8A5B96AD867116FA94" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Decrease in effective tax rate for difference between deduction for tax purposes and compensation cost recognized from stock option exercises</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_9B39CBE1D0FDBB8A5B96AD867116FA94" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_9B39CBE1D0FDBB8A5B96AD867116FA94" xlink:to="lab_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_9B39CBE1D0FDBB8A5B96AD867116FA94" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear_F39E04A067DA357D4D7CAD86711654BA_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear_F39E04A067DA357D4D7CAD86711654BA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase in reserves for income taxes, net of deferred tax benefit</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear_F39E04A067DA357D4D7CAD86711654BA_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear_F39E04A067DA357D4D7CAD86711654BA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Examination, Increase (Decrease) in Liability from Prior Year</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear" xlink:label="loc_us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear_F39E04A067DA357D4D7CAD86711654BA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear_F39E04A067DA357D4D7CAD86711654BA" xlink:to="lab_us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear_F39E04A067DA357D4D7CAD86711654BA" xlink:type="arc" />
    <link:label id="lab_cgnx_IncreaseDecreaseInterestAndPenalties_C982C5F1311C7632292EAD8671161A41_terseLabel_en-US" xlink:label="lab_cgnx_IncreaseDecreaseInterestAndPenalties_C982C5F1311C7632292EAD8671161A41" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest and penalties included in reserve</link:label>
    <link:label id="lab_cgnx_IncreaseDecreaseInterestAndPenalties_C982C5F1311C7632292EAD8671161A41_label_en-US" xlink:label="lab_cgnx_IncreaseDecreaseInterestAndPenalties_C982C5F1311C7632292EAD8671161A41" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase Decrease Interest And Penalties</link:label>
    <link:label id="lab_cgnx_IncreaseDecreaseInterestAndPenalties_C982C5F1311C7632292EAD8671161A41_documentation_en-US" xlink:label="lab_cgnx_IncreaseDecreaseInterestAndPenalties_C982C5F1311C7632292EAD8671161A41" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Increase decrease interest and penalties.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_IncreaseDecreaseInterestAndPenalties" xlink:label="loc_cgnx_IncreaseDecreaseInterestAndPenalties_C982C5F1311C7632292EAD8671161A41" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_IncreaseDecreaseInterestAndPenalties_C982C5F1311C7632292EAD8671161A41" xlink:to="lab_cgnx_IncreaseDecreaseInterestAndPenalties_C982C5F1311C7632292EAD8671161A41" xlink:type="arc" />
    <link:label id="lab_cgnx_LiabilityForUncertainTaxPositions_8E2546B52F5E08A09F12AD86711662DC_terseLabel_en-US" xlink:label="lab_cgnx_LiabilityForUncertainTaxPositions_8E2546B52F5E08A09F12AD86711662DC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Liability for uncertain tax positions</link:label>
    <link:label id="lab_cgnx_LiabilityForUncertainTaxPositions_8E2546B52F5E08A09F12AD86711662DC_label_en-US" xlink:label="lab_cgnx_LiabilityForUncertainTaxPositions_8E2546B52F5E08A09F12AD86711662DC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liability For Uncertain Tax Positions</link:label>
    <link:label id="lab_cgnx_LiabilityForUncertainTaxPositions_8E2546B52F5E08A09F12AD86711662DC_documentation_en-US" xlink:label="lab_cgnx_LiabilityForUncertainTaxPositions_8E2546B52F5E08A09F12AD86711662DC" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Liability for uncertain tax positions, total.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_LiabilityForUncertainTaxPositions" xlink:label="loc_cgnx_LiabilityForUncertainTaxPositions_8E2546B52F5E08A09F12AD86711662DC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_LiabilityForUncertainTaxPositions_8E2546B52F5E08A09F12AD86711662DC" xlink:to="lab_cgnx_LiabilityForUncertainTaxPositions_8E2546B52F5E08A09F12AD86711662DC" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_4F8B66AB77B683B5EE8DAD8671166D9D_verboseLabel_en-US" xlink:label="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_4F8B66AB77B683B5EE8DAD8671166D9D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Reserve for income taxes classified as a noncurrent iability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:label="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_4F8B66AB77B683B5EE8DAD8671166D9D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_4F8B66AB77B683B5EE8DAD8671166D9D" xlink:to="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_4F8B66AB77B683B5EE8DAD8671166D9D" xlink:type="arc" />
    <link:label id="lab_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets_48F958ECA186F04017BCAD867116A8D2_terseLabel_en-US" xlink:label="lab_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets_48F958ECA186F04017BCAD867116A8D2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reserve for income taxes classified an noncurrent deferred tax assets</link:label>
    <link:label id="lab_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets_48F958ECA186F04017BCAD867116A8D2_label_en-US" xlink:label="lab_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets_48F958ECA186F04017BCAD867116A8D2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized tax benefit shown as a reduction to noncurrent deferred tax assets</link:label>
    <link:label id="lab_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets_48F958ECA186F04017BCAD867116A8D2_documentation_en-US" xlink:label="lab_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets_48F958ECA186F04017BCAD867116A8D2" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Unrecognized tax benefit shown as a reduction to noncurrent deferred tax assets as a result of net operating loss carryforward, a similar tax loss, or a tax credit carryforward.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets" xlink:label="loc_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets_48F958ECA186F04017BCAD867116A8D2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets_48F958ECA186F04017BCAD867116A8D2" xlink:to="lab_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets_48F958ECA186F04017BCAD867116A8D2" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_C23022444449F9612F9CAD8671163C73_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_C23022444449F9612F9CAD8671163C73" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest and penalties, gross</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_C23022444449F9612F9CAD8671163C73_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_C23022444449F9612F9CAD8671163C73" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_C23022444449F9612F9CAD8671163C73" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_C23022444449F9612F9CAD8671163C73" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_C23022444449F9612F9CAD8671163C73" xlink:type="arc" />
    <link:label id="lab_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_777FE9511D54E6457372AD867116BAB3_terseLabel_en-US" xlink:label="lab_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_777FE9511D54E6457372AD867116BAB3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Minimum decrease in income tax expense due to release in reserves</link:label>
    <link:label id="lab_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_777FE9511D54E6457372AD867116BAB3_label_en-US" xlink:label="lab_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_777FE9511D54E6457372AD867116BAB3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Minimum Decrease In Income Tax Expense Due To Release In Reserves</link:label>
    <link:label id="lab_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_777FE9511D54E6457372AD867116BAB3_documentation_en-US" xlink:label="lab_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_777FE9511D54E6457372AD867116BAB3" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Minimum decrease in income tax expense due to release in reserves.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves" xlink:label="loc_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_777FE9511D54E6457372AD867116BAB3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_777FE9511D54E6457372AD867116BAB3" xlink:to="lab_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_777FE9511D54E6457372AD867116BAB3" xlink:type="arc" />
    <link:label id="lab_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_062615222AAB4189D318AD8671164CDC_terseLabel_en-US" xlink:label="lab_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_062615222AAB4189D318AD8671164CDC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum decrease in income tax expense due to release in reserves</link:label>
    <link:label id="lab_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_062615222AAB4189D318AD8671164CDC_label_en-US" xlink:label="lab_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_062615222AAB4189D318AD8671164CDC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maximum Decrease In Income Tax Expense Due To Release In Reserves</link:label>
    <link:label id="lab_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_062615222AAB4189D318AD8671164CDC_documentation_en-US" xlink:label="lab_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_062615222AAB4189D318AD8671164CDC" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Maximum decrease in income tax expense due to release in reserves.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves" xlink:label="loc_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_062615222AAB4189D318AD8671164CDC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_062615222AAB4189D318AD8671164CDC" xlink:to="lab_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_062615222AAB4189D318AD8671164CDC" xlink:type="arc" />
    <link:label id="lab_cgnx_TaxyearsopentoexaminationbyInternalRevenueService_196B8B6D00829328F42AAD86711693CB_terseLabel_en-US" xlink:label="lab_cgnx_TaxyearsopentoexaminationbyInternalRevenueService_196B8B6D00829328F42AAD86711693CB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax years open to examination by Internal Revenue Service</link:label>
    <link:label id="lab_cgnx_TaxyearsopentoexaminationbyInternalRevenueService_196B8B6D00829328F42AAD86711693CB_label_en-US" xlink:label="lab_cgnx_TaxyearsopentoexaminationbyInternalRevenueService_196B8B6D00829328F42AAD86711693CB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax years open to examination by Internal Revenue Service</link:label>
    <link:label id="lab_cgnx_TaxyearsopentoexaminationbyInternalRevenueService_196B8B6D00829328F42AAD86711693CB_documentation_en-US" xlink:label="lab_cgnx_TaxyearsopentoexaminationbyInternalRevenueService_196B8B6D00829328F42AAD86711693CB" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tax years open to examination by Internal Revenue Service</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_TaxyearsopentoexaminationbyInternalRevenueService" xlink:label="loc_cgnx_TaxyearsopentoexaminationbyInternalRevenueService_196B8B6D00829328F42AAD86711693CB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_TaxyearsopentoexaminationbyInternalRevenueService_196B8B6D00829328F42AAD86711693CB" xlink:to="lab_cgnx_TaxyearsopentoexaminationbyInternalRevenueService_196B8B6D00829328F42AAD86711693CB" xlink:type="arc" />
    <link:label id="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_865427AB635FBBC4AA79AD867120A194_terseLabel_en-US" xlink:label="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_865427AB635FBBC4AA79AD867120A194" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax years open to examination by various taxing authorities for other entities</link:label>
    <link:label id="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_865427AB635FBBC4AA79AD867120A194_label_en-US" xlink:label="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_865427AB635FBBC4AA79AD867120A194" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Examination Years Under Examination Other Entities</link:label>
    <link:label id="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_865427AB635FBBC4AA79AD867120A194_documentation_en-US" xlink:label="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_865427AB635FBBC4AA79AD867120A194" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The tax year(s) being audited in connection with the income tax examination for other entities.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities" xlink:label="loc_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_865427AB635FBBC4AA79AD867120A194" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_865427AB635FBBC4AA79AD867120A194" xlink:to="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_865427AB635FBBC4AA79AD867120A194" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_F9608DB181DC9CCC0FAAB895CDC42316_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_D193354B7C8F5A06B1FC85AB5EEB0EC0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares (in thousands)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_F9608DB181DC9CCC0FAAB895CDC42316_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_D193354B7C8F5A06B1FC85AB5EEB0EC0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_D193354B7C8F5A06B1FC85AB5EEB0EC0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_D193354B7C8F5A06B1FC85AB5EEB0EC0" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_D193354B7C8F5A06B1FC85AB5EEB0EC0" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_A1247C87B66A4275C19EB895CDC58209_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_53A7E220FF2158608D009FAED8E11F7F" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Outstanding, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_A1247C87B66A4275C19EB895CDC58209_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_53A7E220FF2158608D009FAED8E11F7F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_53A7E220FF2158608D009FAED8E11F7F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_53A7E220FF2158608D009FAED8E11F7F" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_53A7E220FF2158608D009FAED8E11F7F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_4C4A3C1AE94CCA35D1F6B895CDC5CB01_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_D255077A56925BE6A40B49E3E5C99EB7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Granted, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_4C4A3C1AE94CCA35D1F6B895CDC5CB01_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_D255077A56925BE6A40B49E3E5C99EB7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_D255077A56925BE6A40B49E3E5C99EB7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_D255077A56925BE6A40B49E3E5C99EB7" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_D255077A56925BE6A40B49E3E5C99EB7" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_3F9EBBB149102CFC5EC3B895CDC5DACB_negatedLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_8FDC255848A15235AAC52C3E0979BD9F" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Exercised, shares</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_3F9EBBB149102CFC5EC3B895CDC5DACB_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_8FDC255848A15235AAC52C3E0979BD9F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_8FDC255848A15235AAC52C3E0979BD9F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_8FDC255848A15235AAC52C3E0979BD9F" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_8FDC255848A15235AAC52C3E0979BD9F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_D3D48485624E765486F3B895CDC5F2BD_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_AD5235D5AAD35872BA7C51B3B51DB208" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Forfeited or expired, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_D3D48485624E765486F3B895CDC5F2BD_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_AD5235D5AAD35872BA7C51B3B51DB208" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_AD5235D5AAD35872BA7C51B3B51DB208" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_AD5235D5AAD35872BA7C51B3B51DB208" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_AD5235D5AAD35872BA7C51B3B51DB208" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_518D310C0BF9427F99CDB895CDC5008E_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_7109ADAD071B5E34B1C7DEE219158CF9" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Outstanding, shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_7109ADAD071B5E34B1C7DEE219158CF9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_7109ADAD071B5E34B1C7DEE219158CF9" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_7109ADAD071B5E34B1C7DEE219158CF9" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_F75F846C68E5BF61B0B2B895CDC6C2D3_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_96A7701A00925E19BC9299D173050486" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercisable as of reporting date, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_F75F846C68E5BF61B0B2B895CDC6C2D3_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_96A7701A00925E19BC9299D173050486" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_96A7701A00925E19BC9299D173050486" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_96A7701A00925E19BC9299D173050486" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_96A7701A00925E19BC9299D173050486" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_B10ACC0BD3C5F2756B5BB895CDC685A7_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_ED69270DE8B95049AE1FC6B50C77E9BE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Options vested or expected to vest as of reporting date, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_B10ACC0BD3C5F2756B5BB895CDC685A7_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_ED69270DE8B95049AE1FC6B50C77E9BE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Exercisable, Number</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_ED69270DE8B95049AE1FC6B50C77E9BE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_ED69270DE8B95049AE1FC6B50C77E9BE" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_ED69270DE8B95049AE1FC6B50C77E9BE" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_93B684A608F5BACEE882B895CDC62111_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_FB7AFB137BAF529E8AE0E38BC49D5A9C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted- Average Exercise Price</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_93B684A608F5BACEE882B895CDC62111_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_FB7AFB137BAF529E8AE0E38BC49D5A9C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_FB7AFB137BAF529E8AE0E38BC49D5A9C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_FB7AFB137BAF529E8AE0E38BC49D5A9C" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_FB7AFB137BAF529E8AE0E38BC49D5A9C" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_54B61E6199594C7509FEB895CDC6EE7F_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_08417D84F1CC519FAD2A1A9C6D3067C5" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Outstanding, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_54B61E6199594C7509FEB895CDC6EE7F_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_08417D84F1CC519FAD2A1A9C6D3067C5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_08417D84F1CC519FAD2A1A9C6D3067C5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_08417D84F1CC519FAD2A1A9C6D3067C5" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_08417D84F1CC519FAD2A1A9C6D3067C5" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_FD9471DF02ACE4D0C20EB895CDC6224C_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_898001467ADE5BCEB9771066F8F4AE1F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Granted, in dollars per share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_FD9471DF02ACE4D0C20EB895CDC6224C_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_898001467ADE5BCEB9771066F8F4AE1F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_898001467ADE5BCEB9771066F8F4AE1F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_898001467ADE5BCEB9771066F8F4AE1F" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_898001467ADE5BCEB9771066F8F4AE1F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_A610C0E012BDCFD36F36B895CDC68958_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_08EF760ADBA25A67A32395898921D6FB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercised, in dollars per share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_A610C0E012BDCFD36F36B895CDC68958_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_08EF760ADBA25A67A32395898921D6FB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_08EF760ADBA25A67A32395898921D6FB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_08EF760ADBA25A67A32395898921D6FB" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_08EF760ADBA25A67A32395898921D6FB" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_3C5D2C95EC9D2CE42CD0B895CDC7B035_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_11C89D2128835E7DA85801C9DA906DD2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forfeited or expired, in dollars per share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_3C5D2C95EC9D2CE42CD0B895CDC7B035_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_11C89D2128835E7DA85801C9DA906DD2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_11C89D2128835E7DA85801C9DA906DD2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_11C89D2128835E7DA85801C9DA906DD2" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_11C89D2128835E7DA85801C9DA906DD2" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_B441600C93945CB30DE3B895CDC7CC2E_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_40CD0B1ED9E3545A9273E3C6AA3EA65B" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Outstanding, shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_40CD0B1ED9E3545A9273E3C6AA3EA65B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_40CD0B1ED9E3545A9273E3C6AA3EA65B" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_40CD0B1ED9E3545A9273E3C6AA3EA65B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_367BD1A755BCB11BD015B895CDC7A1BA_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_ACFFA58576C1594FB4F4EB668D8C57D8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercisable as of reporting date, Weighted-Average Exercise Price, in dollars per share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_367BD1A755BCB11BD015B895CDC7A1BA_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_ACFFA58576C1594FB4F4EB668D8C57D8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_ACFFA58576C1594FB4F4EB668D8C57D8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_ACFFA58576C1594FB4F4EB668D8C57D8" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_ACFFA58576C1594FB4F4EB668D8C57D8" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_9E68E77FF0FB4A47265EB895CDC7E484_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E75D35E49FFF5C3BB1D1124FB4511618" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted- Average Remaining Contractual Term (in years)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_9E68E77FF0FB4A47265EB895CDC7E484_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E75D35E49FFF5C3BB1D1124FB4511618" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E75D35E49FFF5C3BB1D1124FB4511618" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E75D35E49FFF5C3BB1D1124FB4511618" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E75D35E49FFF5C3BB1D1124FB4511618" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_E64CEB82F7878D9163F3B895CDC7BC4A_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_5023FE0AC6D05CC5875C9C581A1E04C3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted- Average Remaining Contractual Term (in years)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_E64CEB82F7878D9163F3B895CDC7BC4A_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_5023FE0AC6D05CC5875C9C581A1E04C3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_5023FE0AC6D05CC5875C9C581A1E04C3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_5023FE0AC6D05CC5875C9C581A1E04C3" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_5023FE0AC6D05CC5875C9C581A1E04C3" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_DF48B55A3D59E1DCCC3CB895CDC8B0C1_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_5CE306585C405975A642947B319D95A0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding, in years</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_DF48B55A3D59E1DCCC3CB895CDC8B0C1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_5CE306585C405975A642947B319D95A0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_5CE306585C405975A642947B319D95A0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_5CE306585C405975A642947B319D95A0" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_5CE306585C405975A642947B319D95A0" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_C7E28CCFEB257ED5BD94B895CDC8CCE2_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_AA8BDE148BBA5753A5FBE97E4263BE8A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercisable, in years</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_C7E28CCFEB257ED5BD94B895CDC8CCE2_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_AA8BDE148BBA5753A5FBE97E4263BE8A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_AA8BDE148BBA5753A5FBE97E4263BE8A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_AA8BDE148BBA5753A5FBE97E4263BE8A" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_AA8BDE148BBA5753A5FBE97E4263BE8A" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_CCEBD0DED5E92854303BB895CDC8D7F1_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_CE35AEBB387355F5A906F9E0D515A2B2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Options vested or expected to vest, in years</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_CCEBD0DED5E92854303BB895CDC8D7F1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_CE35AEBB387355F5A906F9E0D515A2B2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_CE35AEBB387355F5A906F9E0D515A2B2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_CE35AEBB387355F5A906F9E0D515A2B2" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_CE35AEBB387355F5A906F9E0D515A2B2" xlink:type="arc" />
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_A72465DF709575B60739B895CDC80A7D_terseLabel_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_AAD227FF9136597887AAD1744068D7B5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Aggregate Intrinsic Value (in thousands)</link:label>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_A72465DF709575B60739B895CDC80A7D_label_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_AAD227FF9136597887AAD1744068D7B5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Options Additional Disclosures1 [Abstract]</link:label>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_A72465DF709575B60739B895CDC80A7D_documentation_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_AAD227FF9136597887AAD1744068D7B5" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1 [Abstract]</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_AAD227FF9136597887AAD1744068D7B5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_AAD227FF9136597887AAD1744068D7B5" xlink:to="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_AAD227FF9136597887AAD1744068D7B5" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_89296C4CC887515DE45FB895CDC8EB71_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_E20EF8AAF1AD522D9CED1D131FF4A8B5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding, in dollars</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_89296C4CC887515DE45FB895CDC8EB71_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_E20EF8AAF1AD522D9CED1D131FF4A8B5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_E20EF8AAF1AD522D9CED1D131FF4A8B5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_E20EF8AAF1AD522D9CED1D131FF4A8B5" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_E20EF8AAF1AD522D9CED1D131FF4A8B5" xlink:type="arc" />
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_A188B9A765F2B0DD5EBEB895CDC92ACE_terseLabel_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_3BF02DD633B153DC9418CEF052B0C538" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercisable, in dollars</link:label>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_A188B9A765F2B0DD5EBEB895CDC92ACE_label_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_3BF02DD633B153DC9418CEF052B0C538" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Aggregate Intrinsic Value</link:label>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_A188B9A765F2B0DD5EBEB895CDC92ACE_documentation_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_3BF02DD633B153DC9418CEF052B0C538" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Share based compensation arrangement by share based payment award options exercisable aggregate intrinsic value.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_3BF02DD633B153DC9418CEF052B0C538" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_3BF02DD633B153DC9418CEF052B0C538" xlink:to="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_3BF02DD633B153DC9418CEF052B0C538" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_18F00AEC2DE32128DE8AB895CDC92B0D_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_50472CE83EF355B5A860DDA0A5B63D54" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Options vested or expected to vest, in dollars</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_18F00AEC2DE32128DE8AB895CDC92B0D_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_50472CE83EF355B5A860DDA0A5B63D54" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_50472CE83EF355B5A860DDA0A5B63D54" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_50472CE83EF355B5A860DDA0A5B63D54" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_50472CE83EF355B5A860DDA0A5B63D54" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Measurements, Recurring and Nonrecurring [Table]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Measurements, Recurring and Nonrecurring [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_4F01A4E800A4386F4E79A81CA2A4910F_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member_4F01A4E800A4386F4E79A81CA2A4910F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Quoted Prices in Active Markets for Identical Assets (Level 1)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_4F01A4E800A4386F4E79A81CA2A4910F_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member_4F01A4E800A4386F4E79A81CA2A4910F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 1 [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_4F01A4E800A4386F4E79A81CA2A4910F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel1Member_4F01A4E800A4386F4E79A81CA2A4910F" xlink:to="lab_us-gaap_FairValueInputsLevel1Member_4F01A4E800A4386F4E79A81CA2A4910F" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_9E8F008982D82CE46F12A81CA2A54EBF_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member_9E8F008982D82CE46F12A81CA2A54EBF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Significant Other Observable Inputs (Level 2)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_9E8F008982D82CE46F12A81CA2A54EBF_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member_9E8F008982D82CE46F12A81CA2A54EBF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 2 [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_9E8F008982D82CE46F12A81CA2A54EBF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel2Member_9E8F008982D82CE46F12A81CA2A54EBF" xlink:to="lab_us-gaap_FairValueInputsLevel2Member_9E8F008982D82CE46F12A81CA2A54EBF" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Assets:</link:label>
    <link:label id="lab_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660_label_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets, Fair Value Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsFairValueDisclosureAbstract" xlink:label="loc_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:to="lab_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities_176795C6CB0BEDB61879A81CA2AF38FA_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities_176795C6CB0BEDB61879A81CA2AF38FA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Financial assets at fair value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_176795C6CB0BEDB61879A81CA2AF38FA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_176795C6CB0BEDB61879A81CA2AF38FA" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities_176795C6CB0BEDB61879A81CA2AF38FA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_A4B8DDDA70FBFFDD1C7BA81CA2AF3FCA_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_A4B8DDDA70FBFFDD1C7BA81CA2AF3FCA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Economic hedge forward contracts</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_A4B8DDDA70FBFFDD1C7BA81CA2AF3FCA_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_A4B8DDDA70FBFFDD1C7BA81CA2AF3FCA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Currency Contract, Asset, Fair Value Disclosure</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCurrencyContractAssetFairValueDisclosure" xlink:label="loc_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_A4B8DDDA70FBFFDD1C7BA81CA2AF3FCA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_A4B8DDDA70FBFFDD1C7BA81CA2AF3FCA" xlink:to="lab_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_A4B8DDDA70FBFFDD1C7BA81CA2AF3FCA" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27_label_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Fair Value Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:to="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:type="arc" />
    <link:label id="lab_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_F782291DA3DEDD512E14A81CA2AFDB98_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_F782291DA3DEDD512E14A81CA2AFDB98" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Economic hedge forward contracts</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_F782291DA3DEDD512E14A81CA2AFDB98_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_F782291DA3DEDD512E14A81CA2AFDB98" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Currency Contracts, Liability, Fair Value Disclosure</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure" xlink:label="loc_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_F782291DA3DEDD512E14A81CA2AFDB98" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_F782291DA3DEDD512E14A81CA2AFDB98" xlink:to="lab_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_F782291DA3DEDD512E14A81CA2AFDB98" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_F9F7E7D5018689B752CBA81CA2B09138_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_F9F7E7D5018689B752CBA81CA2B09138" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contingent consideration liabilities</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_F9F7E7D5018689B752CBA81CA2B09138_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_F9F7E7D5018689B752CBA81CA2B09138" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Contingent Consideration, Liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_F9F7E7D5018689B752CBA81CA2B09138" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_F9F7E7D5018689B752CBA81CA2B09138" xlink:to="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_F9F7E7D5018689B752CBA81CA2B09138" xlink:type="arc" />
    <link:label id="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_6240FE9206648341884B94A15034E81A_terseLabel_en-US" xlink:label="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_CEACD66DE4885A55941E162768FF23E2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Components of Cash, Cash Equivalents, and Investments</link:label>
    <link:label id="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_6240FE9206648341884B94A15034E81A_label_en-US" xlink:label="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_CEACD66DE4885A55941E162768FF23E2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Components Of Cash Cash Equivalents And Investments [Table Text Block]</link:label>
    <link:label id="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_6240FE9206648341884B94A15034E81A_documentation_en-US" xlink:label="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_CEACD66DE4885A55941E162768FF23E2" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Components of cash cash equivalents and investments.</link:label>
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" xlink:label="loc_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_CEACD66DE4885A55941E162768FF23E2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_CEACD66DE4885A55941E162768FF23E2" xlink:to="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_CEACD66DE4885A55941E162768FF23E2" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_FDAA2483FF3C92C2447E94A15034CEDE_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_0C0904A64E355288A24C117521CED903" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Available-for-Sale Investments</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_FDAA2483FF3C92C2447E94A15034CEDE_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_0C0904A64E355288A24C117521CED903" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Available-for-sale Securities Reconciliation [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_0C0904A64E355288A24C117521CED903" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_0C0904A64E355288A24C117521CED903" xlink:to="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_0C0904A64E355288A24C117521CED903" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_854F221AD0B1B3FD662094A15035F25F_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_31C0F82D35025253A79744833C5F50B7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross Unrealized Losses and Fair Values for Available-for-Sale Investments</link:label>
    <link:label id="lab_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_854F221AD0B1B3FD662094A15035F25F_label_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_31C0F82D35025253A79744833C5F50B7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Unrealized Loss on Investments [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_31C0F82D35025253A79744833C5F50B7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_31C0F82D35025253A79744833C5F50B7" xlink:to="lab_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_31C0F82D35025253A79744833C5F50B7" xlink:type="arc" />
    <link:label id="lab_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_34B31A610B0086C8389C94A15035B306_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_7CE11AFF369D51B98C6210C2822F4CB3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effective Maturity Dates of Available-for-Sale Investments</link:label>
    <link:label id="lab_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_34B31A610B0086C8389C94A15035B306_label_en-US" xlink:label="lab_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_7CE11AFF369D51B98C6210C2822F4CB3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments Classified by Contractual Maturity Date [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:label="loc_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_7CE11AFF369D51B98C6210C2822F4CB3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_7CE11AFF369D51B98C6210C2822F4CB3" xlink:to="lab_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_7CE11AFF369D51B98C6210C2822F4CB3" xlink:type="arc" />
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>11
<FILENAME>cgnx-20180930_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!-- -->
<link:linkbase 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:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestments" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestments" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsComponentsOfCashCashEquivalentsAndInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsComponentsOfCashCashEquivalentsAndInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsEffectiveMaturityDatesOfAvailableForSaleInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsEffectiveMaturityDatesOfAvailableForSaleInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsGrossUnrealizedLossesAndFairValuesForAvailableForSaleInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsGrossUnrealizedLossesAndFairValuesForAvailableForSaleInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsSummaryOfAvailableForSaleInvestmentsDetail" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsSummaryOfAvailableForSaleInvestmentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsTables" xlink:href="cgnx-20180930.xsd#CashCashEquivalentsAndInvestmentsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheets" xlink:href="cgnx-20180930.xsd#ConsolidatedBalanceSheets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:href="cgnx-20180930.xsd#ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquity" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementOfShareholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquityParenthetical" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementOfShareholdersEquityParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfCashFlows" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementsOfCashFlows" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncome" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementsOfComprehensiveIncome" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncomeParenthetical" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementsOfComprehensiveIncomeParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsOfOperations" xlink:href="cgnx-20180930.xsd#ConsolidatedStatementsOfOperations" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstruments" xlink:href="cgnx-20180930.xsd#DerivativeInstruments" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsDerivativeInstrumentsGainLossDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsOffsettingAssetsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsOutstandingForwardContractsTableDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueDetail" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsTables" xlink:href="cgnx-20180930.xsd#DerivativeInstrumentsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/DocumentAndEntityInformation" xlink:href="cgnx-20180930.xsd#DocumentAndEntityInformation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurements" xlink:href="cgnx-20180930.xsd#FairValueMeasurements" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurementsAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetail" xlink:href="cgnx-20180930.xsd#FairValueMeasurementsAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurementsLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationDetails" xlink:href="cgnx-20180930.xsd#FairValueMeasurementsLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurementsTables" xlink:href="cgnx-20180930.xsd#FairValueMeasurementsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssets" xlink:href="cgnx-20180930.xsd#IntangibleAssets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssetsDetails" xlink:href="cgnx-20180930.xsd#IntangibleAssetsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssetsTables" xlink:href="cgnx-20180930.xsd#IntangibleAssetsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/Inventories" xlink:href="cgnx-20180930.xsd#Inventories" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/InventoriesScheduleOfInventoriesDetail" xlink:href="cgnx-20180930.xsd#InventoriesScheduleOfInventoriesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/InventoriesTables" xlink:href="cgnx-20180930.xsd#InventoriesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/NewPronouncements" xlink:href="cgnx-20180930.xsd#NewPronouncements" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognition" xlink:href="cgnx-20180930.xsd#RevenueRecognition" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionAdditionalInformationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionDeferredRevenueActivityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionImpactOnBalanceSheetDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionImpactOnBalanceSheetDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionImpactOnStatementOfOperationsDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionImpactOnStatementOfOperationsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByGeographyDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionRevenueDisaggregatedByGeographyDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByProductsAndServicesDetails" xlink:href="cgnx-20180930.xsd#RevenueRecognitionRevenueDisaggregatedByProductsAndServicesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionTables" xlink:href="cgnx-20180930.xsd#RevenueRecognitionTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpense" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpense" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseDetail" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseNonvestedRestrictedStockSharesActivityDetails" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseNonvestedRestrictedStockSharesActivityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsDetail" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseSummaryOfStockOptionActivityDetail" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseSummaryOfStockOptionActivityDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseTables" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedInEstimatingFairValuesOfStockOptionsGrantedDetail" xlink:href="cgnx-20180930.xsd#StockBasedCompensationExpenseWeightedAverageAssumptionsUsedInEstimatingFairValuesOfStockOptionsGrantedDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockRepurchaseProgram" xlink:href="cgnx-20180930.xsd#StockRepurchaseProgram" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/StockRepurchaseProgramDetail" xlink:href="cgnx-20180930.xsd#StockRepurchaseProgramDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/SubsequentEvents" xlink:href="cgnx-20180930.xsd#SubsequentEvents" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/SubsequentEventsDetails" xlink:href="cgnx-20180930.xsd#SubsequentEventsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/SummaryOfSignificantAccountingPolicies" xlink:href="cgnx-20180930.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="cgnx-20180930.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/Taxes" xlink:href="cgnx-20180930.xsd#Taxes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/TaxesDetail" xlink:href="cgnx-20180930.xsd#TaxesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/TaxesReconciliationOfUnitedStatesFederalStatutoryCorporateTaxRateToCompanysEffectiveTaxRateOrIncomeTaxProvisionDetail" xlink:href="cgnx-20180930.xsd#TaxesReconciliationOfUnitedStatesFederalStatutoryCorporateTaxRateToCompanysEffectiveTaxRateOrIncomeTaxProvisionDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/TaxesTables" xlink:href="cgnx-20180930.xsd#TaxesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WarrantyObligations" xlink:href="cgnx-20180930.xsd#WarrantyObligations" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WarrantyObligationsChangesInWarrantyObligationsDetail" xlink:href="cgnx-20180930.xsd#WarrantyObligationsChangesInWarrantyObligationsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WarrantyObligationsTables" xlink:href="cgnx-20180930.xsd#WarrantyObligationsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageShares" xlink:href="cgnx-20180930.xsd#WeightedAverageShares" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesCalculationOfWeightedAverageSharesDetail" xlink:href="cgnx-20180930.xsd#WeightedAverageSharesCalculationOfWeightedAverageSharesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesDetail" xlink:href="cgnx-20180930.xsd#WeightedAverageSharesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesTables" xlink:href="cgnx-20180930.xsd#WeightedAverageSharesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" xlink:type="simple" />
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestments" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_4C58996996E65D9C85E16058523ADE09" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock" xlink:label="loc_us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock_863D881801F951B79D1807C13B88F205" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_4C58996996E65D9C85E16058523ADE09" xlink:to="loc_us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock_863D881801F951B79D1807C13B88F205" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsComponentsOfCashCashEquivalentsAndInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_4073839E32F3AA960442A7E494BA31E6" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesTable" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_5C176A0CDE24EB0729DBA7E494BB459C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_4073839E32F3AA960442A7E494BA31E6" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_5C176A0CDE24EB0729DBA7E494BB459C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_8B4B801B72C01536E08BA7E494BB38E4" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_5C176A0CDE24EB0729DBA7E494BB459C" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_8B4B801B72C01536E08BA7E494BB38E4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_8B4B801B72C01536E08BA7E494BB38E4" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_A467E8FAD90769335695A7E494BC8217" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_A467E8FAD90769335695A7E494BC8217" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CorporateBondSecuritiesMember" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_01F48108ACE99455AE16A7E494BC9B19" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_01F48108ACE99455AE16A7E494BC9B19" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetBackedSecuritiesMember" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_D5E94E767B48E29E94D2A7E494BCFF57" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_D5E94E767B48E29E94D2A7E494BCFF57" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtMember" xlink:label="loc_us-gaap_SovereignDebtMember_3F69505AFF533B55C70DA7EA28419B55" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_us-gaap_SovereignDebtMember_3F69505AFF533B55C70DA7EA28419B55" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtSecuritiesMember" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_C6D567954107C63DE2CCA7E494BC0CE5" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_C6D567954107C63DE2CCA7E494BC0CE5" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AgencyBondsMember" xlink:label="loc_cgnx_AgencyBondsMember_9A14E8AB428F4987BC1EA7E494BD6529" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_cgnx_AgencyBondsMember_9A14E8AB428F4987BC1EA7E494BD6529" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MunicipalBondsMember" xlink:label="loc_us-gaap_MunicipalBondsMember_C954139921D1BCB3A373A7E494BE499F" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_54A6092F3642B00151F0A7E494BBDD0E" xlink:to="loc_us-gaap_MunicipalBondsMember_C954139921D1BCB3A373A7E494BE499F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_5C176A0CDE24EB0729DBA7E494BB459C" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Cash" xlink:label="loc_us-gaap_Cash_6819883AF5ADB0886C62A7E494BE1B85" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_Cash_6819883AF5ADB0886C62A7E494BE1B85" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MoneyMarketFundsAtCarryingValue" xlink:label="loc_us-gaap_MoneyMarketFundsAtCarryingValue_6571BAF2EF03ED2814A5A7E494BFE168" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_MoneyMarketFundsAtCarryingValue_6571BAF2EF03ED2814A5A7E494BFE168" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_C0E27DE771F376F27B92A7E494BF84FE" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_C0E27DE771F376F27B92A7E494BF84FE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_135D13C999C13DD363B7A7E494BF651A" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_135D13C999C13DD363B7A7E494BF651A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_700A57F2F3CE772EE147A7E494BF894A" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_700A57F2F3CE772EE147A7E494BF894A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LongTermInvestments" xlink:label="loc_us-gaap_LongTermInvestments_872C638FD6E0D23A7DDAA7E494BFFCDB" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_us-gaap_LongTermInvestments_872C638FD6E0D23A7DDAA7E494BFFCDB" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_CashCashEquivalentsShortTermAndLongTermInvestments" xlink:label="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_E17E735705E8E2ED7A9CA7E494BEF392" xlink:to="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2248DEE2D0524E06816EA7E494BF457B" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_A3B57E66B36B5F08AD0DBF4218F66504" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesGrossRealizedGains" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesGrossRealizedGains_AEF43082102958FF8F62F77E102F4205" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_A3B57E66B36B5F08AD0DBF4218F66504" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesGrossRealizedGains_AEF43082102958FF8F62F77E102F4205" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses_628CDBE1C5F75854863658A4ED6B2AC3" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_A3B57E66B36B5F08AD0DBF4218F66504" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses_628CDBE1C5F75854863658A4ED6B2AC3" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsEffectiveMaturityDatesOfAvailableForSaleInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_852AE5C897EA50F214D0A6E2966C5A48" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesTable" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_852AE5C897EA50F214D0A6E2966C5A48" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_2A3F0580E4C0F11D148DA6E2966C1A71" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CorporateBondSecuritiesMember" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_86753CECC7B72B575117A6E2966D1B8C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_86753CECC7B72B575117A6E2966D1B8C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_1A92125F3A05EAE7EEAFA6E2966EB25C" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_1A92125F3A05EAE7EEAFA6E2966EB25C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetBackedSecuritiesMember" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_737AEA3C7E7CDCDBCCA5A6E2966EA9FE" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_737AEA3C7E7CDCDBCCA5A6E2966EA9FE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtSecuritiesMember" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_E09319DC48846DFBC4E7A6E2966E342F" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_E09319DC48846DFBC4E7A6E2966E342F" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AgencyBondsMember" xlink:label="loc_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="loc_cgnx_AgencyBondsMember_8E9C41BA399CB06ACED1A6E2966EDC0A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MunicipalBondsMember" xlink:label="loc_us-gaap_MunicipalBondsMember_593D0A479B5EF693CA31A6E2966ED5C9" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_8A94A2BA8837C5A8FF2EA6E2966D648A" xlink:to="loc_us-gaap_MunicipalBondsMember_593D0A479B5EF693CA31A6E2966ED5C9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_1D2CB7F9277EAC3AF36EA6E2966CEEB0" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_6F29441AEB401A5911D5A6E2966FAFA5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_6F29441AEB401A5911D5A6E2966FAFA5" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_32F2D59C8D52EAE43F3AA6E2966F2009" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_51994913AD8616C700EDA6E2966FDD82" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_EACDCC6C0969A7D1F7E0A6E2966F16FC" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_417002A146CF253D6F6DA6E2966F83B7" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue_63078346CD3928061791A6E29670D65C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_C400FC229053A7A928CAA6E29670C8CE" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_749FC27D43743E90B639A6E2966E82CA" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_C400FC229053A7A928CAA6E29670C8CE" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsGrossUnrealizedLossesAndFairValuesForAvailableForSaleInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_4DF6EBCDEB9565B9B16AACEF105EA53C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesTable" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_52CAE6B6130AB736083BACEF105F22C4" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_4DF6EBCDEB9565B9B16AACEF105EA53C" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_52CAE6B6130AB736083BACEF105F22C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_D28C4D67A337FFB58CDBACEF105F29AC" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_52CAE6B6130AB736083BACEF105F22C4" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_D28C4D67A337FFB58CDBACEF105F29AC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_D28C4D67A337FFB58CDBACEF105F29AC" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_07F76FA43A33429C51B7ACEF1060809F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_07F76FA43A33429C51B7ACEF1060809F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CorporateBondSecuritiesMember" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_68B7D4125B4CDC346A7DACEF106076DB" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_68B7D4125B4CDC346A7DACEF106076DB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetBackedSecuritiesMember" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_2EC2588255779A339D8DACEF10609570" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_2EC2588255779A339D8DACEF10609570" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtSecuritiesMember" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_D63C0BFD2EFF5D6D4261ACEF106037F2" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_D63C0BFD2EFF5D6D4261ACEF106037F2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MunicipalBondsMember" xlink:label="loc_us-gaap_MunicipalBondsMember_D4B2802A0AC8C9F8D823ACEF106198CE" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_5FF94FFACACA5AB254EBACEF105F7C49" xlink:to="loc_us-gaap_MunicipalBondsMember_D4B2802A0AC8C9F8D823ACEF106198CE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_52CAE6B6130AB736083BACEF105F22C4" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_76CAFE7C2F8BE0609B3BACEF106139B1" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue_76CAFE7C2F8BE0609B3BACEF106139B1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_169D2DBE61F5626280B3ACEF10610CDA" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_169D2DBE61F5626280B3ACEF10610CDA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_348D2EA2DAF2F9DADC5DACEF106193C2" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue_348D2EA2DAF2F9DADC5DACEF106193C2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_BA5331F16DD445431841ACEF1061CECA" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_BA5331F16DD445431841ACEF1061CECA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_DAA251287549B5469A49ACEF10621ED3" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue_DAA251287549B5469A49ACEF10621ED3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5D2E572661FC4CF50D92ACEF1062DEB3" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_F30375FC33A7B914DFD0ACEF1061A8D2" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5D2E572661FC4CF50D92ACEF1062DEB3" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsSummaryOfAvailableForSaleInvestmentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_A8C2AF303AB83D8AB7ACACE68FDD3B7F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesTable" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_FFA6323984AA76FEEC30ACE68FE38152" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_A8C2AF303AB83D8AB7ACACE68FDD3B7F" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_FFA6323984AA76FEEC30ACE68FE38152" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_0B266F127BF0DD3D02A1ACE68FE6F395" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_FFA6323984AA76FEEC30ACE68FE38152" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_0B266F127BF0DD3D02A1ACE68FE6F395" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_0B266F127BF0DD3D02A1ACE68FE6F395" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AgencyBondsMember" xlink:label="loc_cgnx_AgencyBondsMember_3D80C52CD534434136C4ACE68FEEF133" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:to="loc_cgnx_AgencyBondsMember_3D80C52CD534434136C4ACE68FEEF133" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_07C0C26A1A72F2BE535FACE68FEC48C6" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_07C0C26A1A72F2BE535FACE68FEC48C6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CorporateBondSecuritiesMember" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_A7495B42157D1E86CBBDACE68FEDD69D" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_A7495B42157D1E86CBBDACE68FEDD69D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetBackedSecuritiesMember" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_F4A77DAB0735D2411A71ACE68FEEC08D" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_F4A77DAB0735D2411A71ACE68FEEC08D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtSecuritiesMember" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_C5E7A4D81B746FE9AFFCACE68FEE6AD4" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_C5E7A4D81B746FE9AFFCACE68FEE6AD4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MunicipalBondsMember" xlink:label="loc_us-gaap_MunicipalBondsMember_447E5F4C2200B89B6536ACE68FEE17BD" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_4CFF23AE5B47B7CEE22AACE68FEC5659" xlink:to="loc_us-gaap_MunicipalBondsMember_447E5F4C2200B89B6536ACE68FEE17BD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentTypeAxis" xlink:label="loc_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_FFA6323984AA76FEEC30ACE68FE38152" xlink:to="loc_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeAxis_8B80AB2C750B04425023ACE68FEE3657" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShortTermInvestmentsMember" xlink:label="loc_us-gaap_ShortTermInvestmentsMember_E662976120854C9351B3ACE68FEF94EE" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:to="loc_us-gaap_ShortTermInvestmentsMember_E662976120854C9351B3ACE68FEF94EE" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_LongTermInvestmentsMember" xlink:label="loc_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_0313B8A0668A286AC86FACE68FEFA227" xlink:to="loc_cgnx_LongTermInvestmentsMember_3A8E82D9F3B3E31E0E45ACE68FEF73F3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_59096C4FDD1BAE9F17A3ACE68FEFB815" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_FFA6323984AA76FEEC30ACE68FE38152" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_59096C4FDD1BAE9F17A3ACE68FEFB815" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_DC0CC5251D0271EECF3FACE68FF0C824" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_59096C4FDD1BAE9F17A3ACE68FEFB815" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_DC0CC5251D0271EECF3FACE68FF0C824" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_FF1C20E74C0828B25FFEACE68FF037A0" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_59096C4FDD1BAE9F17A3ACE68FEFB815" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_FF1C20E74C0828B25FFEACE68FF037A0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5E1A767B4C9E19518C06ACE68FF0D278" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_59096C4FDD1BAE9F17A3ACE68FEFB815" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_5E1A767B4C9E19518C06ACE68FF0D278" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecurities_C5FF0D43AD4B76AD74CAACE68FF0B268" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_59096C4FDD1BAE9F17A3ACE68FEFB815" xlink:to="loc_us-gaap_AvailableForSaleSecurities_C5FF0D43AD4B76AD74CAACE68FF0B268" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_6D6F225B12745B51BCA0F8936AA855A9" xlink:type="locator" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" xlink:label="loc_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_CEACD66DE4885A55941E162768FF23E2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_6D6F225B12745B51BCA0F8936AA855A9" xlink:to="loc_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_CEACD66DE4885A55941E162768FF23E2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_0C0904A64E355288A24C117521CED903" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_6D6F225B12745B51BCA0F8936AA855A9" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_0C0904A64E355288A24C117521CED903" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_31C0F82D35025253A79744833C5F50B7" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_6D6F225B12745B51BCA0F8936AA855A9" xlink:to="loc_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_31C0F82D35025253A79744833C5F50B7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:label="loc_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_7CE11AFF369D51B98C6210C2822F4CB3" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_6D6F225B12745B51BCA0F8936AA855A9" xlink:to="loc_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_7CE11AFF369D51B98C6210C2822F4CB3" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_BFE0806ED7C168590EFBA6E296F77FA7" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_BFE0806ED7C168590EFBA6E296F77FA7" xlink:to="loc_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:to="loc_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_6F3EAE1F01DC11AF9ACDA6E296F8AEAA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_6F3EAE1F01DC11AF9ACDA6E296F8AEAA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_534B626875FC159E2E75A6E296F83B27" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_534B626875FC159E2E75A6E296F83B27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_3465F7C6F8CC81AA9A7EA6E296F81044" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_3465F7C6F8CC81AA9A7EA6E296F81044" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="loc_us-gaap_UnbilledReceivablesCurrent_D3FC9DC82C8F2FBDAC2CA6E296F8A770" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:to="loc_us-gaap_UnbilledReceivablesCurrent_D3FC9DC82C8F2FBDAC2CA6E296F8A770" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_C6353EEC8664DA6F01F6A6E296F8B31D" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:to="loc_us-gaap_InventoryNet_C6353EEC8664DA6F01F6A6E296F8B31D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_7515053EC8BD9B909D88A6E296F9F47E" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_7515053EC8BD9B909D88A6E296F9F47E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent_EBD123BB736687AD0AB4A6E296F97BB5" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_99F59189A3FE66993359A6E296F7152B" xlink:to="loc_us-gaap_AssetsCurrent_EBD123BB736687AD0AB4A6E296F97BB5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LongTermInvestments" xlink:label="loc_us-gaap_LongTermInvestments_AF3277EB96F723CC7FECA6E296F9FC0F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:to="loc_us-gaap_LongTermInvestments_AF3277EB96F723CC7FECA6E296F9FC0F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_107D0F042BA48135299EA6E296F95A87" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_107D0F042BA48135299EA6E296F95A87" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_7E50F9964DD3AE2AFE2BA6E296F9A6C4" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:to="loc_us-gaap_Goodwill_7E50F9964DD3AE2AFE2BA6E296F9A6C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3ACB2A6E761BEC9BCFA1A6E296F94100" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3ACB2A6E761BEC9BCFA1A6E296F94100" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredTaxAssetsNetNoncurrent" xlink:label="loc_us-gaap_DeferredTaxAssetsNetNoncurrent_90A9C586558DD73D4D7DA6E296FA960A" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:to="loc_us-gaap_DeferredTaxAssetsNetNoncurrent_90A9C586558DD73D4D7DA6E296FA960A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_DE5F5EB5428869AF12FEA6E296FAD39F" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_DE5F5EB5428869AF12FEA6E296FAD39F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_8CBEC18A582682281D33A6E296FA06C4" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_81D81C5E7AE7B25664B9A6E296F76C8F" xlink:to="loc_us-gaap_Assets_8CBEC18A582682281D33A6E296FA06C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_BFE0806ED7C168590EFBA6E296F77FA7" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent_61E7C0944928792B5D47A6E296FB75A5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D" xlink:to="loc_us-gaap_AccountsPayableCurrent_61E7C0944928792B5D47A6E296FB75A5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_A0B2D62D1E4450FCCE81A6E296FB1897" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_A0B2D62D1E4450FCCE81A6E296FB1897" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_461E333C34EFB9ABADCDA6E296FB9CA8" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_461E333C34EFB9ABADCDA6E296FB9CA8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenueAndCreditsCurrent" xlink:label="loc_us-gaap_DeferredRevenueAndCreditsCurrent_55D4F9EBF5637F0B1FE7A6E296FB0664" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D" xlink:to="loc_us-gaap_DeferredRevenueAndCreditsCurrent_55D4F9EBF5637F0B1FE7A6E296FB0664" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent_F7CCA5B47D1BBEA4AD52A6E296FB62DF" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_50530D09B4C8BC55F727A6E296FA363D" xlink:to="loc_us-gaap_LiabilitiesCurrent_F7CCA5B47D1BBEA4AD52A6E296FB62DF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_EC7A2E3B41B804A8639AA6E296FCF16D" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_EC7A2E3B41B804A8639AA6E296FCF16D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:label="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_DE05932B91DE4C2573C1A6E296FC1956" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:to="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_DE05932B91DE4C2573C1A6E296FC1956" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedIncomeTaxes" xlink:label="loc_us-gaap_AccruedIncomeTaxes_70316BC1A48D85762ECCA6E296FC9BC9" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:to="loc_us-gaap_AccruedIncomeTaxes_70316BC1A48D85762ECCA6E296FC9BC9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_2EB3521504397216FEEBA6E296FCD7A8" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_2EB3521504397216FEEBA6E296FCD7A8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities_9D54558F03D78CB54AE3A6E296FC62E9" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:to="loc_us-gaap_Liabilities_9D54558F03D78CB54AE3A6E296FC62E9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:to="loc_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockValueOutstanding" xlink:label="loc_us-gaap_CommonStockValueOutstanding_8EB104ACC331179465CEA6E296FD9952" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4" xlink:to="loc_us-gaap_CommonStockValueOutstanding_8EB104ACC331179465CEA6E296FD9952" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_F189B445704C6BA3F77BA6E296FD4456" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_F189B445704C6BA3F77BA6E296FD4456" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_D5322AA52F17E1DC5E5DA6E296FDAEE1" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_D5322AA52F17E1DC5E5DA6E296FDAEE1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_212B3FB7500D3DE8BB10A6E296FDD343" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_212B3FB7500D3DE8BB10A6E296FDD343" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_CC3525BDC206472E91D3A6E296FDF86F" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_019A9D1753037CAC4C48A6E296FCC1A4" xlink:to="loc_us-gaap_StockholdersEquity_CC3525BDC206472E91D3A6E296FDF86F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_A6D6F4CA8652301F5ECBA6E296FEF873" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_E97BB763892DAE18BAECA6E296FAEDD8" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_A6D6F4CA8652301F5ECBA6E296FEF873" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_AC275181A0EE5E5C907BD3FB6D852EEC" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_D5FC95FCC9CE5F68BE1F0BBE72862779" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_AC275181A0EE5E5C907BD3FB6D852EEC" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_D5FC95FCC9CE5F68BE1F0BBE72862779" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_B51576AE7C9A5DDAA3A72C13F1D7E4DD" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_AC275181A0EE5E5C907BD3FB6D852EEC" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_B51576AE7C9A5DDAA3A72C13F1D7E4DD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_4CF6F4DF5CB85DFF8FF30B3E5807A964" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_AC275181A0EE5E5C907BD3FB6D852EEC" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_4CF6F4DF5CB85DFF8FF30B3E5807A964" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_0FB77BF727835DDBB6B7194D1350457B" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_AC275181A0EE5E5C907BD3FB6D852EEC" xlink:to="loc_us-gaap_CommonStockSharesIssued_0FB77BF727835DDBB6B7194D1350457B" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquity" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_58941581102CC8280A3EA2DC9D2102DB" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_58941581102CC8280A3EA2DC9D2102DB" xlink:to="loc_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_A76B29C32111CF49895FA2DC9D22E92B" xlink:to="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_84A3A6067236A394DDA3A2DC9D23EDF2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:to="loc_us-gaap_CommonStockMember_84A3A6067236A394DDA3A2DC9D23EDF2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_B6F92FD4A17870163763A2DC9D23184E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_B6F92FD4A17870163763A2DC9D23184E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_957F52071C30951120D2A2DC9D23A494" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:to="loc_us-gaap_RetainedEarningsMember_957F52071C30951120D2A2DC9D23A494" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_20EE3DBCA908B4CFF1CCA2DC9D245B91" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_800CBDA68EF28F66327EA2DC9D22D837" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_20EE3DBCA908B4CFF1CCA2DC9D245B91" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1B769FDB84B78936E9E4A2DC9D22FF90" xlink:to="loc_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_727370E29ED0F57A22D4A2DC9D292716" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_BEB7D3649FD61092C354A2DC9D2A8540" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_CommonStockSharesIssued_BEB7D3649FD61092C354A2DC9D2A8540" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_804B09B9C6F9DC3BE51AA2DC9D2A6032" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_StockholdersEquity_804B09B9C6F9DC3BE51AA2DC9D2A6032" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_37FB51A778471E21906AA2DC9D2AE01B" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_37FB51A778471E21906AA2DC9D2AE01B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_16204B7177111D4D159DA2DC9D2A65F6" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_16204B7177111D4D159DA2DC9D2A65F6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares_E412DB9096B2B29F8557A2DC9D2A7B43" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodShares_E412DB9096B2B29F8557A2DC9D2A7B43" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue_57A5963EEB1B86D6749DA2DC9D2A4377" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodValue_57A5963EEB1B86D6749DA2DC9D2A4377" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7510CC8F06F8A50581DEA2DC9D2BF785" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7510CC8F06F8A50581DEA2DC9D2BF785" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DividendsCash" xlink:label="loc_us-gaap_DividendsCash_48C141D5DAFC06497E66A2DC9D2B9472" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_DividendsCash_48C141D5DAFC06497E66A2DC9D2B9472" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:label="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_0A5CCEF394CCE2FB951CA2DC9D2B833F" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_0A5CCEF394CCE2FB951CA2DC9D2B833F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_422678CFECBD51DA604CA2DC9D2B49EA" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_NetIncomeLoss_422678CFECBD51DA604CA2DC9D2B49EA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_0DB67CC8FF85FFA2F4F0A2DC9D2C1BE4" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_0DB67CC8FF85FFA2F4F0A2DC9D2C1BE4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_B60B8DD90D824635F0B7A2DC9D2C40A5" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_B60B8DD90D824635F0B7A2DC9D2C40A5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_0D89E48294C45F0306F1A2DC9D2CFF5E" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_0D89E48294C45F0306F1A2DC9D2CFF5E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_20BC7A35687D58C2AC66A2DC9D2C80FB" xlink:type="locator" />
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_CommonStockSharesIssued_20BC7A35687D58C2AC66A2DC9D2C80FB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_D305373BE98FF07D5954A2DC9D2C44E3" xlink:type="locator" />
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_D65BB479868819EAA660A2DC9D29ECB5" xlink:to="loc_us-gaap_StockholdersEquity_D305373BE98FF07D5954A2DC9D2C44E3" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquityParenthetical" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_3F42173A20CA54458949A0DA31E7A64C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_18FF0DADC1A1570DB59306303A1C6F78" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_3F42173A20CA54458949A0DA31E7A64C" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_18FF0DADC1A1570DB59306303A1C6F78" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_A9BE7A329696F012C62BA6E296DCECAC" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_A9BE7A329696F012C62BA6E296DCECAC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_BECFD4D5E8B59B5908B3A6E296DC8705" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_A9BE7A329696F012C62BA6E296DCECAC" xlink:to="loc_us-gaap_NetIncomeLoss_BECFD4D5E8B59B5908B3A6E296DC8705" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_A9BE7A329696F012C62BA6E296DCECAC" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockOptionPlanExpense" xlink:label="loc_us-gaap_StockOptionPlanExpense_BDEA5B65617C3501E0C4A6E296DD0762" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_StockOptionPlanExpense_BDEA5B65617C3501E0C4A6E296DD0762" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_A886256C8B5DA83D85C7A6E296DD656D" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_Depreciation_A886256C8B5DA83D85C7A6E296DD656D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_5BB0F16144BBED32CF17A6E296DDA5E3" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_5BB0F16144BBED32CF17A6E296DDA5E3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments" xlink:label="loc_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_94AC66F24A245731CCF8A6E296DD83B4" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_94AC66F24A245731CCF8A6E296DD83B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossOnSaleOfInvestments" xlink:label="loc_us-gaap_GainLossOnSaleOfInvestments_E8918F9F5CE8ABDDBC54A6E296DEF547" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_GainLossOnSaleOfInvestments_E8918F9F5CE8ABDDBC54A6E296DEF547" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_E90640788CE365EF4694A6E296DE9FCF" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_E90640788CE365EF4694A6E296DE9FCF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_1F655E79B655E90E51DFA6E296DE8B16" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_1F655E79B655E90E51DFA6E296DE8B16" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_62E5EC0EE6C79421280DA6E296DE6FD1" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_62E5EC0EE6C79421280DA6E296DE6FD1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInUnbilledReceivables" xlink:label="loc_us-gaap_IncreaseDecreaseInUnbilledReceivables_C343BE6F5E017B6C0C6BA6E296DE18D0" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_IncreaseDecreaseInUnbilledReceivables_C343BE6F5E017B6C0C6BA6E296DE18D0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_130D53B72B14C983935AA6E296DF6D26" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_130D53B72B14C983935AA6E296DF6D26" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_EFA7278C9DD73834B7AFA6E296DFFAC9" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_EFA7278C9DD73834B7AFA6E296DFFAC9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_C3F1FA018AEBD9143C68A6E296DF76D5" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_C3F1FA018AEBD9143C68A6E296DF76D5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_B69F5A4AFEAC7B2A8599A6E296DF1A06" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_B69F5A4AFEAC7B2A8599A6E296DF1A06" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_C1730E873E835690B71EA6E296DFDCEC" xlink:type="locator" />
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_C1730E873E835690B71EA6E296DFDCEC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_7C1322F40B366ABB439CA6E296DFA237" xlink:type="locator" />
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_7C1322F40B366ABB439CA6E296DFA237" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_10F8B6CCC8F121BFC361A6E296E040EC" xlink:type="locator" />
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_CF0B3AA77C79A9B5E6E0A6E296DDA9CA" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_10F8B6CCC8F121BFC361A6E296E040EC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3194ECBFAE00780B55CEA6E296E008FC" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_A9BE7A329696F012C62BA6E296DCECAC" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3194ECBFAE00780B55CEA6E296E008FC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="loc_us-gaap_PaymentsToAcquireInvestments_925E53DA89431AE6E0B3A6E296E0E973" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:to="loc_us-gaap_PaymentsToAcquireInvestments_925E53DA89431AE6E0B3A6E296E0E973" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:label="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_6FBB83ADA7C089E7E225A6E296E109F4" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:to="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_6FBB83ADA7C089E7E225A6E296E109F4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9E679E68220C7890CE81A6E296E1F1F5" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9E679E68220C7890CE81A6E296E1F1F5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E4475D61174ABB29D9ADA6E296E1EDC2" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E4475D61174ABB29D9ADA6E296E1EDC2" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_PaymentsForDivestitureofBusinesses" xlink:label="loc_cgnx_PaymentsForDivestitureofBusinesses_B21C7D1EFBB8852241F2A6E296E16F14" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:to="loc_cgnx_PaymentsForDivestitureofBusinesses_B21C7D1EFBB8852241F2A6E296E16F14" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_BBEBE357485265C26A99A6E296E1212D" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_A2677FC674822049E5EEA6E296E06BD4" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_BBEBE357485265C26A99A6E296E1212D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_09B99F51D4B2C3FEAEEFA6E296E29EA7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_09B99F51D4B2C3FEAEEFA6E296E29EA7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_5DB349D449E4473C40E6A6E296E2A448" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_5DB349D449E4473C40E6A6E296E2A448" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="loc_us-gaap_PaymentsOfDividendsCommonStock_16AEB8B01CB736DC110BA6E296E214A7" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813" xlink:to="loc_us-gaap_PaymentsOfDividendsCommonStock_16AEB8B01CB736DC110BA6E296E214A7" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Paymentofcontingentconsideration" xlink:label="loc_cgnx_Paymentofcontingentconsideration_474F781416FAF3CB7F3FA6E296E2E2D0" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813" xlink:to="loc_cgnx_Paymentofcontingentconsideration_474F781416FAF3CB7F3FA6E296E2E2D0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_B027AEFF4A23606B01A7A6E296E23590" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_5E6878FE11CE6EF40D93A6E296E14813" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_B027AEFF4A23606B01A7A6E296E23590" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_D572E6388A86C504AE8CA6E296E35741" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_D572E6388A86C504AE8CA6E296E35741" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_135E2A51CB78C69BC56EA6E296E39F81" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45" xlink:to="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_135E2A51CB78C69BC56EA6E296E39F81" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_671219F9F16F643CF875A6E296E36D25" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_671219F9F16F643CF875A6E296E36D25" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_7C63F0CBE6FFD7B231CDA6E296E3FC5F" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_5192B0FFB1C2152DD154A6E296DC4F45" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_7C63F0CBE6FFD7B231CDA6E296E3FC5F" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_14D8BC72976D47FDB860A2DC9DC495D5" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_1E7FC894D7FD99134E62A2DC9DCA3585" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_14D8BC72976D47FDB860A2DC9DC495D5" xlink:to="loc_us-gaap_NetIncomeLoss_1E7FC894D7FD99134E62A2DC9DCA3585" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_14D8BC72976D47FDB860A2DC9DC495D5" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_CashflowshedgesAbstract" xlink:label="loc_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6" xlink:to="loc_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_96F41B7FF0BC3C028423A2DC9DCA2429" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_96F41B7FF0BC3C028423A2DC9DCA2429" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_DAFF98E3086321EEA9EEA2DC9DCB2278" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_DAFF98E3086321EEA9EEA2DC9DCB2278" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_99698055B3A1187702BDA2DC9DCB950F" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_CashflowshedgesAbstract_82C2E315B55C48647BD8A2DC9DCA8B3C" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax_99698055B3A1187702BDA2DC9DCB950F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_A707828520EBC422550DA2DC9DCB79FD" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_A707828520EBC422550DA2DC9DCB79FD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_CC3CF662F41C6891B4B3A2DC9DCBE0AF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_A707828520EBC422550DA2DC9DCB79FD" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_CC3CF662F41C6891B4B3A2DC9DCBE0AF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_66FD9B45F2023B9D77C8A2DC9DCC210E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_A707828520EBC422550DA2DC9DCB79FD" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_66FD9B45F2023B9D77C8A2DC9DCC210E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_B1D626F42322AE5A356FA2DC9DCCC37A" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_A707828520EBC422550DA2DC9DCB79FD" xlink:to="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_B1D626F42322AE5A356FA2DC9DCCC37A" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_CurrencytranslationadjustmentsAbstract" xlink:label="loc_cgnx_CurrencytranslationadjustmentsAbstract_1E4BB75B139E5BE2CE15A2DC9DCC7030" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6" xlink:to="loc_cgnx_CurrencytranslationadjustmentsAbstract_1E4BB75B139E5BE2CE15A2DC9DCC7030" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_2144F8D0414F157CACADA2DC9DCCD4B2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_CurrencytranslationadjustmentsAbstract_1E4BB75B139E5BE2CE15A2DC9DCC7030" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_2144F8D0414F157CACADA2DC9DCCD4B2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1957163EC3D81C525283A2DC9DCC24B3" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_55B7D62A40CC0484FD7BA2DC9DCAE2F6" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1957163EC3D81C525283A2DC9DCC24B3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_B0CBB22697D773A306BAA2DC9DCD1CEB" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_14D8BC72976D47FDB860A2DC9DC495D5" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_B0CBB22697D773A306BAA2DC9DCD1CEB" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncomeParenthetical" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_BCBCA31B52CD56B2B251BDFAEEEF0707" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax_0DFA3E38663A5350B96BD11B6ECBA702" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_BCBCA31B52CD56B2B251BDFAEEEF0707" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax_0DFA3E38663A5350B96BD11B6ECBA702" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_4ABFCA2CAC8C5B2BAC8D6E69A81C1DC7" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_BCBCA31B52CD56B2B251BDFAEEEF0707" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_4ABFCA2CAC8C5B2BAC8D6E69A81C1DC7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_922F12B37C445635A320DC8CA87F793A" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_BCBCA31B52CD56B2B251BDFAEEEF0707" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_922F12B37C445635A320DC8CA87F793A" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsOfOperations" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNet" xlink:label="loc_us-gaap_SalesRevenueNet_4169F170865A27DF181DA6E297186AB8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_SalesRevenueNet_4169F170865A27DF181DA6E297186AB8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_A12B14F93FDD3AD5699FA6E29719ED03" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_A12B14F93FDD3AD5699FA6E29719ED03" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_D4A489576CE2640B47B1A6E297199DF8" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_GrossProfit_D4A489576CE2640B47B1A6E297199DF8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_31696A4EC50D09B34692A6E297197968" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_31696A4EC50D09B34692A6E297197968" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_9F721529F59F9DF99559A6E297192FEC" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_9F721529F59F9DF99559A6E297192FEC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_D9155F1679D62D87C946A6E297195BE0" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_OperatingIncomeLoss_D9155F1679D62D87C946A6E297195BE0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_FB9F89C0C8AF3AE347E3A6E297195A4C" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_FB9F89C0C8AF3AE347E3A6E297195A4C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentIncomeNonoperating" xlink:label="loc_us-gaap_InvestmentIncomeNonoperating_97A2FE33EB7C4745F765A6E2971A65B0" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_InvestmentIncomeNonoperating_97A2FE33EB7C4745F765A6E2971A65B0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_B02C059A4C8FA8BDC8ADA6E2971A5066" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_B02C059A4C8FA8BDC8ADA6E2971A5066" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_DA407D2E69280FFD802EA6E2971A6AEC" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_DA407D2E69280FFD802EA6E2971A6AEC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_4E91C764826727F56226A6E2971A640C" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_4E91C764826727F56226A6E2971A640C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_418BD3A5095AF3D159E6A6E2971A6211" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_NetIncomeLoss_418BD3A5095AF3D159E6A6E2971A6211" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareDilutedAbstract" xlink:label="loc_us-gaap_EarningsPerShareDilutedAbstract_28767FD558360C5A0D4BA6E2971B882B" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_EarningsPerShareDilutedAbstract_28767FD558360C5A0D4BA6E2971B882B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_1EA8BA266DDEC87B6107A6E2971B8AE7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract_28767FD558360C5A0D4BA6E2971B882B" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_1EA8BA266DDEC87B6107A6E2971B8AE7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_4D250F92BBABD0039C99A6E2971B9AF0" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract_28767FD558360C5A0D4BA6E2971B882B" xlink:to="loc_us-gaap_EarningsPerShareDiluted_4D250F92BBABD0039C99A6E2971B9AF0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_7410C73BE2F2B00E5E8CA6E2971BD0F2" xlink:type="locator" />
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_7410C73BE2F2B00E5E8CA6E2971BD0F2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_5E4B01D883C29E3035AFA6E2971BE2F3" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_7410C73BE2F2B00E5E8CA6E2971BD0F2" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_5E4B01D883C29E3035AFA6E2971BE2F3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_452EEE18441FAF1C0922A6E2971C63ED" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_7410C73BE2F2B00E5E8CA6E2971BD0F2" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_452EEE18441FAF1C0922A6E2971C63ED" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockDividendsPerShareCashPaid" xlink:label="loc_us-gaap_CommonStockDividendsPerShareCashPaid_69E446D7B3BF298BEF87A6E2971CDDE2" xlink:type="locator" />
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_047373AA063B2188F932A6E2971848DE" xlink:to="loc_us-gaap_CommonStockDividendsPerShareCashPaid_69E446D7B3BF298BEF87A6E2971CDDE2" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstruments" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_BA8DACA1630A513282DB1D8EBFA81EC2" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_5BE962A05E5E5637B80594065F0E5CBD" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_BA8DACA1630A513282DB1D8EBFA81EC2" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_5BE962A05E5E5637B80594065F0E5CBD" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_248015340CD556DFBB4457BF4B9125AA" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_248015340CD556DFBB4457BF4B9125AA" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_35D0EA8276A85245A00629C1C181EA3E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:to="loc_us-gaap_HedgingDesignationAxis_35D0EA8276A85245A00629C1C181EA3E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_35D0EA8276A85245A00629C1C181EA3E" xlink:to="loc_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_11BD7CB215A0504F844D1962EE44EFDF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_11BD7CB215A0504F844D1962EE44EFDF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="loc_us-gaap_NondesignatedMember_7C55823B11A954AFA59DFDC1CAFE618A" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_B124446F1B265568885BB70CB94BB437" xlink:to="loc_us-gaap_NondesignatedMember_7C55823B11A954AFA59DFDC1CAFE618A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_DB31ABF445DE59EF9FD91D93DD8ED3E4" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_DB31ABF445DE59EF9FD91D93DD8ED3E4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_DB31ABF445DE59EF9FD91D93DD8ED3E4" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashFlowHedgingMember" xlink:label="loc_us-gaap_CashFlowHedgingMember_2B2BEEA4C3535E4CA926CC1247382604" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:to="loc_us-gaap_CashFlowHedgingMember_2B2BEEA4C3535E4CA926CC1247382604" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueGoodsNetMember" xlink:label="loc_us-gaap_SalesRevenueGoodsNetMember_5E3DE8D99E60518A9099E536464C98FC" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:to="loc_us-gaap_SalesRevenueGoodsNetMember_5E3DE8D99E60518A9099E536464C98FC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_9FAF6588A7E65897B82C4722C62C3DCB" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_9FAF6588A7E65897B82C4722C62C3DCB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_735F44E8450155299EECBB466D378615" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_735F44E8450155299EECBB466D378615" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCurrencyGainLossMember" xlink:label="loc_us-gaap_ForeignCurrencyGainLossMember_4116E869B46455F98130ACCBDFECBB8C" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A5320E07C204522F92EEDE77684D88CA" xlink:to="loc_us-gaap_ForeignCurrencyGainLossMember_4116E869B46455F98130ACCBDFECBB8C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_385D86E92D3B5AAA9AEBE304C9E5AEFE" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet_659F1CC045FA5BA9BE536F5E540D9474" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet_659F1CC045FA5BA9BE536F5E540D9474" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_CCD1910F5C505D4DBE629A914A8390A0" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_CCD1910F5C505D4DBE629A914A8390A0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_4D037D12D37A586F9F7F7937405185A6" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_4D037D12D37A586F9F7F7937405185A6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_06C84226DDF9579A90801B45D935CD38" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_06C84226DDF9579A90801B45D935CD38" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeGainLossOnDerivativeNet" xlink:label="loc_us-gaap_DerivativeGainLossOnDerivativeNet_0B89F2B1ECB45E008A9248B752806252" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_E29B0FF5B4A655759D564B1668A70858" xlink:to="loc_us-gaap_DerivativeGainLossOnDerivativeNet_0B89F2B1ECB45E008A9248B752806252" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_857A41FA6CFAA04FC54EA6E296302AA2" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_857A41FA6CFAA04FC54EA6E296302AA2" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_8A55222F45B27AB69F4CA6E296302CBC" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77" xlink:to="loc_us-gaap_HedgingDesignationAxis_8A55222F45B27AB69F4CA6E296302CBC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_1C773996869D889CB9D7A6E296314AA3" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_8A55222F45B27AB69F4CA6E296302CBC" xlink:to="loc_us-gaap_HedgingDesignationDomain_1C773996869D889CB9D7A6E296314AA3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_C8DEFA883E14CEEF4780A6E29631F1C8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_1C773996869D889CB9D7A6E296314AA3" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_C8DEFA883E14CEEF4780A6E29631F1C8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="loc_us-gaap_NondesignatedMember_D62219746B50F51C755CA6E296313F3F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_1C773996869D889CB9D7A6E296314AA3" xlink:to="loc_us-gaap_NondesignatedMember_D62219746B50F51C755CA6E296313F3F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_396E97CCD0A6A0E941B0A6E29630AD77" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:label="loc_us-gaap_DerivativeNumberOfInstrumentsHeld_E3039CB4C386343509C1A6E296324266" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:to="loc_us-gaap_DerivativeNumberOfInstrumentsHeld_E3039CB4C386343509C1A6E296324266" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1" xlink:label="loc_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_EFDB9EFCB0763633F24DA6E296324679" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:to="loc_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_EFDB9EFCB0763633F24DA6E296324679" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1" xlink:label="loc_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1_68763F6CD3E7AFB70E40A6E296323F54" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_C75DCEA990FB603D2473A6E296312D8D" xlink:to="loc_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1_68763F6CD3E7AFB70E40A6E296323F54" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_5A59A9302F8750A8B3D6D545E03E3BD6" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeFairValueOfDerivativeAsset" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeAsset_0CE7BE289F6453469F973AB67A8C291E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_5A59A9302F8750A8B3D6D545E03E3BD6" xlink:to="loc_us-gaap_DerivativeFairValueOfDerivativeAsset_0CE7BE289F6453469F973AB67A8C291E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset" xlink:label="loc_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_4EF79EB68E745078ADDD21C3C55C84FB" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_5A59A9302F8750A8B3D6D545E03E3BD6" xlink:to="loc_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_4EF79EB68E745078ADDD21C3C55C84FB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_B2B0894239A95DB69B1FF290BBAD73BA" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_5A59A9302F8750A8B3D6D545E03E3BD6" xlink:to="loc_us-gaap_DerivativeAssets_B2B0894239A95DB69B1FF290BBAD73BA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeFairValueOfDerivativeLiability" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeLiability_328F034BFC105B51A3A3151A4D157CB4" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_5A59A9302F8750A8B3D6D545E03E3BD6" xlink:to="loc_us-gaap_DerivativeFairValueOfDerivativeLiability_328F034BFC105B51A3A3151A4D157CB4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset" xlink:label="loc_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_559870A38D4E5333BF48711F14D1333E" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_5A59A9302F8750A8B3D6D545E03E3BD6" xlink:to="loc_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_559870A38D4E5333BF48711F14D1333E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_43DF0192E14D582092134861D1DA18D6" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_5A59A9302F8750A8B3D6D545E03E3BD6" xlink:to="loc_us-gaap_DerivativeLiabilities_43DF0192E14D582092134861D1DA18D6" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_D7EBAE3CA23D3C1AE4E8AB039D575D86" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeTable" xlink:label="loc_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_D7EBAE3CA23D3C1AE4E8AB039D575D86" xlink:to="loc_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_652C09689E8EAAB2380DAB039D576229" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:to="loc_us-gaap_HedgingDesignationAxis_652C09689E8EAAB2380DAB039D576229" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_1A2770C45D09046009CFAB039D574BE1" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_652C09689E8EAAB2380DAB039D576229" xlink:to="loc_us-gaap_HedgingDesignationDomain_1A2770C45D09046009CFAB039D574BE1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_D2A1AAA5CC323EE51ACBAB039D57BBCB" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_1A2770C45D09046009CFAB039D574BE1" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_D2A1AAA5CC323EE51ACBAB039D57BBCB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="loc_us-gaap_NondesignatedMember_4E1C793CA335AEC0EC0DAB039D57AFDA" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_1A2770C45D09046009CFAB039D574BE1" xlink:to="loc_us-gaap_NondesignatedMember_4E1C793CA335AEC0EC0DAB039D57AFDA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CurrencyAxis" xlink:label="loc_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:to="loc_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_AllCurrenciesDomain" xlink:label="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrencyAxis_1E4C3A8361294F2D365CAB039D570443" xlink:to="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_EUR" xlink:label="loc_currency_EUR_ADF1C3F5F578C11D8FC6AB039D573C9A" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_EUR_ADF1C3F5F578C11D8FC6AB039D573C9A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_JPY" xlink:label="loc_currency_JPY_CAAB1E17DD5823EE7D69AB039D57F79C" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_JPY_CAAB1E17DD5823EE7D69AB039D57F79C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_GBP" xlink:label="loc_currency_GBP_DB6D9F46525D0DC5A17EAB039D57942B" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_GBP_DB6D9F46525D0DC5A17EAB039D57942B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_HUF" xlink:label="loc_currency_HUF_39045233C091A2348A8DAB039D578560" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_HUF_39045233C091A2348A8DAB039D578560" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_KRW" xlink:label="loc_currency_KRW_A4F1B5B34FDC79E7BCC7AB039D573974" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_KRW_A4F1B5B34FDC79E7BCC7AB039D573974" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_TWD" xlink:label="loc_currency_TWD_E6025CE6D4A82278AD37AB039D571CEE" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_TWD_E6025CE6D4A82278AD37AB039D571CEE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_CAD" xlink:label="loc_currency_CAD_FB036F855D0DD9BE07D6AB039D5712E1" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_CAD_FB036F855D0DD9BE07D6AB039D5712E1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_SGD" xlink:label="loc_currency_SGD_303B4B33CC44963BA1C0AB039D5798D9" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_SGD_303B4B33CC44963BA1C0AB039D5798D9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd#currency_CHF" xlink:label="loc_currency_CHF_E7A2672CEA0ECC4E78E9AB03E42B336F" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_F354048F1DDCC8C5304DAB039D573132" xlink:to="loc_currency_CHF_E7A2672CEA0ECC4E78E9AB03E42B336F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeLineItems" xlink:label="loc_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeTable_5B408B7D35CE0E9CD364AB039D572671" xlink:to="loc_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeAssetNotionalAmount" xlink:label="loc_us-gaap_DerivativeAssetNotionalAmount_F1BB1EFFC26AF643B613AB039D579846" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeLineItems_67D18D9E1BF91C68246DAB039D574DDD" xlink:to="loc_us-gaap_DerivativeAssetNotionalAmount_F1BB1EFFC26AF643B613AB039D579846" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_05EADB904F8691D9B70EA6E2961FA2F0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:label="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_05EADB904F8691D9B70EA6E2961FA2F0" xlink:to="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_94E1E5D2B6A1FCDA0554A6E2961FDE10" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:to="loc_us-gaap_HedgingDesignationAxis_94E1E5D2B6A1FCDA0554A6E2961FDE10" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_EBC544359525F43E269AA6E2961FAA42" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_94E1E5D2B6A1FCDA0554A6E2961FDE10" xlink:to="loc_us-gaap_HedgingDesignationDomain_EBC544359525F43E269AA6E2961FAA42" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="loc_us-gaap_NondesignatedMember_D1A8B386D58A4B8945F5A6E296205C4D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_EBC544359525F43E269AA6E2961FAA42" xlink:to="loc_us-gaap_NondesignatedMember_D1A8B386D58A4B8945F5A6E296205C4D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_8352A1321EAF5C8AAB38A6E2962073D9" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:label="loc_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_BD86C14793ADFC1ED3F0A6E296219568" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:to="loc_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_BD86C14793ADFC1ED3F0A6E296219568" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AccruedExpensesMember" xlink:label="loc_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_05E3D52E5A9A25912838A6E296203C48" xlink:to="loc_cgnx_AccruedExpensesMember_0C6641F1092BEE5CE6A6A6E296218685" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativesFairValueLineItems" xlink:label="loc_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4B508920ABAB6D7AFCDDA6E2961F280A" xlink:to="loc_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_EE452B951C3667126109A6E296210E1B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:to="loc_us-gaap_DerivativeAssets_EE452B951C3667126109A6E296210E1B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_71CD43CE6A71328D1432A6E296224F83" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_4C20013C5AA232D9F4BFA6E2962168C0" xlink:to="loc_us-gaap_DerivativeLiabilities_71CD43CE6A71328D1432A6E296224F83" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_33E4C38986E055F18207FBD43D38F8E1" xlink:type="locator" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_OutstandingForwardContractsTableTextBlock" xlink:label="loc_cgnx_OutstandingForwardContractsTableTextBlock_A6883D4570B95782945872F9B9DBB145" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_33E4C38986E055F18207FBD43D38F8E1" xlink:to="loc_cgnx_OutstandingForwardContractsTableTextBlock_A6883D4570B95782945872F9B9DBB145" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_7F815FDAD15752A5A77D6EDBE96548A8" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_33E4C38986E055F18207FBD43D38F8E1" xlink:to="loc_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_7F815FDAD15752A5A77D6EDBE96548A8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OffsettingAssetsTableTextBlock" xlink:label="loc_us-gaap_OffsettingAssetsTableTextBlock_A965C8F8CB9D53FB89F91C842B7193B6" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_33E4C38986E055F18207FBD43D38F8E1" xlink:to="loc_us-gaap_OffsettingAssetsTableTextBlock_A965C8F8CB9D53FB89F91C842B7193B6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_8E4C8028E4275D01A9AA052CE28F6A17" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_33E4C38986E055F18207FBD43D38F8E1" xlink:to="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_8E4C8028E4275D01A9AA052CE28F6A17" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DocumentAndEntityInformation" xlink:type="extended">
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_DocumentAndEntityInformationAbstract" xlink:label="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityRegistrantName" xlink:label="loc_dei_EntityRegistrantName_E4BA0BA825415763ABE0530B8CE8A737" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:to="loc_dei_EntityRegistrantName_E4BA0BA825415763ABE0530B8CE8A737" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="loc_dei_EntityCentralIndexKey_011BFB012E335AAE82C932E0C615A6F2" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:to="loc_dei_EntityCentralIndexKey_011BFB012E335AAE82C932E0C615A6F2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_dei_CurrentFiscalYearEndDate_7CDDB08666D25045AEE18B8AE3E6EEE0" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:to="loc_dei_CurrentFiscalYearEndDate_7CDDB08666D25045AEE18B8AE3E6EEE0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityFilerCategory" xlink:label="loc_dei_EntityFilerCategory_FCF601AE2AAB502482A85DF57ED42831" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:to="loc_dei_EntityFilerCategory_FCF601AE2AAB502482A85DF57ED42831" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentType" xlink:label="loc_dei_DocumentType_0EACC27E249551349174165482FA0E92" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:to="loc_dei_DocumentType_0EACC27E249551349174165482FA0E92" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_AB715FF9621C54939778D4F9033477A7" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:to="loc_dei_DocumentPeriodEndDate_AB715FF9621C54939778D4F9033477A7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_dei_DocumentFiscalYearFocus_C1F03A8EB4685923BFEB02E0D0F3552D" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:to="loc_dei_DocumentFiscalYearFocus_C1F03A8EB4685923BFEB02E0D0F3552D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_dei_DocumentFiscalPeriodFocus_EBA1F782916355A6893630B4F7DF893B" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:to="loc_dei_DocumentFiscalPeriodFocus_EBA1F782916355A6893630B4F7DF893B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_AmendmentFlag" xlink:label="loc_dei_AmendmentFlag_0B00625E73865B589F22C0C41BE3E0D0" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:to="loc_dei_AmendmentFlag_0B00625E73865B589F22C0C41BE3E0D0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_DB77228266D75F1DAB9957EA11BAFB72" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DocumentAndEntityInformationAbstract_EDF0F4DA146A5CBEBBB1CAE42D6741ED" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_DB77228266D75F1DAB9957EA11BAFB72" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/FairValueMeasurements" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_2686AD1460F8530ABBB8FCB1EA01EEBE" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock_3A1A260A7E1C5118BDC9B0BF4A048AA0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_2686AD1460F8530ABBB8FCB1EA01EEBE" xlink:to="loc_us-gaap_FairValueDisclosuresTextBlock_3A1A260A7E1C5118BDC9B0BF4A048AA0" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/FairValueMeasurementsAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_039451B8673AC6E63400A81CA29855B8" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_039451B8673AC6E63400A81CA29855B8" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_B63EB54D855B23199409A81CA2A35613" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_B63EB54D855B23199409A81CA2A35613" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_FEF7DE97BEFD0B42B900A81CA2A4F2E3" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_B63EB54D855B23199409A81CA2A35613" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_FEF7DE97BEFD0B42B900A81CA2A4F2E3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_4F01A4E800A4386F4E79A81CA2A4910F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_FEF7DE97BEFD0B42B900A81CA2A4F2E3" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_4F01A4E800A4386F4E79A81CA2A4910F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_9E8F008982D82CE46F12A81CA2A54EBF" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_FEF7DE97BEFD0B42B900A81CA2A4F2E3" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_9E8F008982D82CE46F12A81CA2A54EBF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_8E54867BD4E624F36EDBA81CA2A5733D" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_FEF7DE97BEFD0B42B900A81CA2A4F2E3" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_8E54867BD4E624F36EDBA81CA2A5733D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_A96F8213B507AFDB9554A81CA2A59F24" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_A96F8213B507AFDB9554A81CA2A59F24" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_76232CBB6ADF53DDF73DA81CA2A66F93" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_A96F8213B507AFDB9554A81CA2A59F24" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_76232CBB6ADF53DDF73DA81CA2A66F93" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember_3D72BA342A69CDC32A3FA81CA2A696D7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_76232CBB6ADF53DDF73DA81CA2A66F93" xlink:to="loc_us-gaap_FairValueMeasurementsRecurringMember_3D72BA342A69CDC32A3FA81CA2A696D7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_85FF36BBA4372A38AEFAA81CA2A6E4A6" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_85FF36BBA4372A38AEFAA81CA2A6E4A6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain" xlink:label="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis_85FF36BBA4372A38AEFAA81CA2A6E4A6" xlink:to="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CorporateBondSecuritiesMember" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_288A51E0E4A9B74E4861A81CA2A749E4" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_288A51E0E4A9B74E4861A81CA2A749E4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_E86E8A84893653537C97A81CA2A75DC7" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_E86E8A84893653537C97A81CA2A75DC7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetBackedSecuritiesMember" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_30D9444D0C708506E5FDA81CA2A7A4EC" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_30D9444D0C708506E5FDA81CA2A7A4EC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SovereignDebtSecuritiesMember" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_B0D71FB5369783DC5E78A81CA2A85390" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_B0D71FB5369783DC5E78A81CA2A85390" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AgencyBondsMember" xlink:label="loc_cgnx_AgencyBondsMember_C5EBF810E200D55CE46CA81CA2A815BA" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:to="loc_cgnx_AgencyBondsMember_C5EBF810E200D55CE46CA81CA2A815BA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MunicipalBondsMember" xlink:label="loc_us-gaap_MunicipalBondsMember_5DA1203DAC762FB6BF8EA81CA2A84744" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MajorTypesOfDebtAndEquitySecuritiesDomain_866087F505DDDBCCB343A81CA2A78AF7" xlink:to="loc_us-gaap_MunicipalBondsMember_5DA1203DAC762FB6BF8EA81CA2A84744" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_EBF339222C39391D3606A81CA2A0E94D" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsFairValueDisclosureAbstract" xlink:label="loc_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:to="loc_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MoneyMarketFundsAtCarryingValue" xlink:label="loc_us-gaap_MoneyMarketFundsAtCarryingValue_43820E06E5A4AD8BDE55A81CA2AE2DB5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:to="loc_us-gaap_MoneyMarketFundsAtCarryingValue_43820E06E5A4AD8BDE55A81CA2AE2DB5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_176795C6CB0BEDB61879A81CA2AF38FA" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_176795C6CB0BEDB61879A81CA2AF38FA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCurrencyContractAssetFairValueDisclosure" xlink:label="loc_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_A4B8DDDA70FBFFDD1C7BA81CA2AF3FCA" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_228A8EA5061A7CE50CA2A81CA2A86660" xlink:to="loc_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_A4B8DDDA70FBFFDD1C7BA81CA2AF3FCA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_17FDA4064E09F1DE0B4AA81CA2A8928E" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure" xlink:label="loc_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_F782291DA3DEDD512E14A81CA2AFDB98" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:to="loc_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_F782291DA3DEDD512E14A81CA2AFDB98" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_F9F7E7D5018689B752CBA81CA2B09138" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_F1A00620B5A24ABC5754A81CA2AFDA27" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_F9F7E7D5018689B752CBA81CA2B09138" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/FairValueMeasurementsLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_F08B70A95507565E951EAF28C587CE5B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_F08B70A95507565E951EAF28C587CE5B" xlink:to="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_CE8CFD3BDB245574BC05E904A71EACCD" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_CE8CFD3BDB245574BC05E904A71EACCD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_CE8CFD3BDB245574BC05E904A71EACCD" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ManateeWorksInc.Member" xlink:label="loc_cgnx_ManateeWorksInc.Member_F2ACEACDF66A5D82BB5A4A02B853228C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:to="loc_cgnx_ManateeWorksInc.Member_F2ACEACDF66A5D82BB5A4A02B853228C" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_GViVenturesInc.Member" xlink:label="loc_cgnx_GViVenturesInc.Member_77D6E1214CC55568AA7AB3DC72CC13EB" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:to="loc_cgnx_GViVenturesInc.Member_77D6E1214CC55568AA7AB3DC72CC13EB" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ChiaroTechnologiesLLCMember" xlink:label="loc_cgnx_ChiaroTechnologiesLLCMember_F2E2C7E2D798592191299064C9F71185" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_19D2F6A4E67D5B24A37E0B11A8E3D4AD" xlink:to="loc_cgnx_ChiaroTechnologiesLLCMember_F2E2C7E2D798592191299064C9F71185" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_415C766AAA9D5E2F95D2ECFD6FA44199" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_415C766AAA9D5E2F95D2ECFD6FA44199" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_E2DF88656DDB5A00B20E4EB0DD4CF62E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_415C766AAA9D5E2F95D2ECFD6FA44199" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_E2DF88656DDB5A00B20E4EB0DD4CF62E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_CC2542F0E8FF5F539AE0B270A6BF9AD9" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_E2DF88656DDB5A00B20E4EB0DD4CF62E" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_CC2542F0E8FF5F539AE0B270A6BF9AD9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_C8F88600DA875D2A801B9CF67E0F6110" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_C8F88600DA875D2A801B9CF67E0F6110" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_D7B35A9A93E656DF94353A8B040F3D92" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_C8F88600DA875D2A801B9CF67E0F6110" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_D7B35A9A93E656DF94353A8B040F3D92" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember_992F570581D751A5976BAAC3BFD6AF42" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_D7B35A9A93E656DF94353A8B040F3D92" xlink:to="loc_us-gaap_FairValueMeasurementsRecurringMember_992F570581D751A5976BAAC3BFD6AF42" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTable_D37715FDE3ED595F894AAE1F01320EE0" xlink:to="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_37B2CC2A18755E3F9E88A9AAFC0F96EB" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_37B2CC2A18755E3F9E88A9AAFC0F96EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesFairValueAdjustment" xlink:label="loc_us-gaap_LiabilitiesFairValueAdjustment_A33706A02215560DB8F2C6618D2C3B7D" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:to="loc_us-gaap_LiabilitiesFairValueAdjustment_A33706A02215560DB8F2C6618D2C3B7D" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Paymentofcontingentconsideration" xlink:label="loc_cgnx_Paymentofcontingentconsideration_205420FE8C3C55AA85178D7366E4B640" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:to="loc_cgnx_Paymentofcontingentconsideration_205420FE8C3C55AA85178D7366E4B640" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_94E8F70AE5C15E9690E9536077C435C9" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_19B078608CE35490AC3C0C98FC84D875" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_94E8F70AE5C15E9690E9536077C435C9" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/FairValueMeasurementsTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_0FCEA4E82A86516998D2B19230772919" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_82C0FC67AA175692987B87CF39A64C8D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_0FCEA4E82A86516998D2B19230772919" xlink:to="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_82C0FC67AA175692987B87CF39A64C8D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_9533069B9D81555BADC62C1E2BEA7494" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_0FCEA4E82A86516998D2B19230772919" xlink:to="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_9533069B9D81555BADC62C1E2BEA7494" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/IntangibleAssets" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_16E32285A6A157ABB11F97E3CD27C1C1" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaap_IntangibleAssetsDisclosureTextBlock_2C337C44F9265CD29F4100E0AB6A258B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_16E32285A6A157ABB11F97E3CD27C1C1" xlink:to="loc_us-gaap_IntangibleAssetsDisclosureTextBlock_2C337C44F9265CD29F4100E0AB6A258B" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/IntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_B0D0C3F47F8E5C91A46C10DF39256CC0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_AD471BCF4F0557A58B17CDF9C6392795" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_B0D0C3F47F8E5C91A46C10DF39256CC0" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_AD471BCF4F0557A58B17CDF9C6392795" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57CB7AD7C14B5434AE3512B653086E36" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_AD471BCF4F0557A58B17CDF9C6392795" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57CB7AD7C14B5434AE3512B653086E36" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57CB7AD7C14B5434AE3512B653086E36" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DistributionRightsMember" xlink:label="loc_us-gaap_DistributionRightsMember_4C88E126A1CD5CB785645FD509BB67F9" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:to="loc_us-gaap_DistributionRightsMember_4C88E126A1CD5CB785645FD509BB67F9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_48D9A251F5A35450A7C81678E22D3CB4" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:to="loc_us-gaap_DevelopedTechnologyRightsMember_48D9A251F5A35450A7C81678E22D3CB4" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_CustomerContractsAndRelationshipsMember" xlink:label="loc_cgnx_CustomerContractsAndRelationshipsMember_4C6AD98833375E4CA1B263304FFFA1A6" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:to="loc_cgnx_CustomerContractsAndRelationshipsMember_4C6AD98833375E4CA1B263304FFFA1A6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherIntangibleAssetsMember" xlink:label="loc_us-gaap_OtherIntangibleAssetsMember_0F1E53DBE755543D94379542024ADA11" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_225FB96E68955C55988A3A908727BB49" xlink:to="loc_us-gaap_OtherIntangibleAssetsMember_0F1E53DBE755543D94379542024ADA11" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_AD471BCF4F0557A58B17CDF9C6392795" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_5BB979F7034D57F8A7D76B498C542FD6" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_5BB979F7034D57F8A7D76B498C542FD6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_F1A416C48DAB5EC3B604B0936816016A" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_F1A416C48DAB5EC3B604B0936816016A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3A16109ED16A5CCF94C8D3E4ABDBCADD" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3A16109ED16A5CCF94C8D3E4ABDBCADD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_D0B19175CDC85D20BD108D9AE84D05E8" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_94E6726B270257E1BBDD15C873FFA13B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_94E6726B270257E1BBDD15C873FFA13B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_E872696E647252C69AF62C395CB26280" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_E872696E647252C69AF62C395CB26280" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_5BDF63115A6950F58818DBEFE6FC9263" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_5BDF63115A6950F58818DBEFE6FC9263" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_892F09C85977569FB02998CD8B3F937A" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_892F09C85977569FB02998CD8B3F937A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_5EA77F446D865BB3A6C8F801CE810575" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_5EA77F446D865BB3A6C8F801CE810575" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_3D25A02FCBA75E2FAD1A3739C8DF7F74" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_3D25A02FCBA75E2FAD1A3739C8DF7F74" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_3A66DDBEE76158C8B2533CECAE5935F9" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_3A66DDBEE76158C8B2533CECAE5935F9" xlink:type="arc" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_949F391A81405DC7A6828E1F1AAB8C8B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3A16109ED16A5CCF94C8D3E4ABDBCADD" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/IntangibleAssetsTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_F4E5157679B95B189DA456B2BB4E15BD" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_960D8033307957799614AD2BF7F74843" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_F4E5157679B95B189DA456B2BB4E15BD" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_960D8033307957799614AD2BF7F74843" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_0E41A83D8EE4596599BED259FAC0A1F0" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_F4E5157679B95B189DA456B2BB4E15BD" xlink:to="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_0E41A83D8EE4596599BED259FAC0A1F0" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/Inventories" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_7D39193C537F595BA2DDF29916F09D1A" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_FE59406A84DA5CF9ABAE6B4A3FA64970" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_7D39193C537F595BA2DDF29916F09D1A" xlink:to="loc_us-gaap_InventoryDisclosureTextBlock_FE59406A84DA5CF9ABAE6B4A3FA64970" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/InventoriesScheduleOfInventoriesDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_F530C2E872E35EB7A2A1FD506A7D4919" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_40C16DD30A3B5BEB8815A75CE4728B9B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_F530C2E872E35EB7A2A1FD506A7D4919" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_40C16DD30A3B5BEB8815A75CE4728B9B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_F980C5D2BCBC5CA996C0A30DDD5229E4" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_F530C2E872E35EB7A2A1FD506A7D4919" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves_F980C5D2BCBC5CA996C0A30DDD5229E4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_3CE1E43F0075515F9E73666E5D2E09EA" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_F530C2E872E35EB7A2A1FD506A7D4919" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_3CE1E43F0075515F9E73666E5D2E09EA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_A4EFA991B960553EB4E3623AE08005B9" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_F530C2E872E35EB7A2A1FD506A7D4919" xlink:to="loc_us-gaap_InventoryNet_A4EFA991B960553EB4E3623AE08005B9" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/InventoriesTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_60BCF10BB23C516A813C36DB382D827F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_4178694804445089A980646B76652055" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_60BCF10BB23C516A813C36DB382D827F" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_4178694804445089A980646B76652055" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/NewPronouncements" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_1359DFAF22875524BFC9B9BC2AF72698" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_77B1869346B65C4581FF06D47D710650" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_1359DFAF22875524BFC9B9BC2AF72698" xlink:to="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_77B1869346B65C4581FF06D47D710650" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognition" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_2969A957AAE147078BD6AD117F8BD7C0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_A7007462A7B48ADF2162AD11C502AC3E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_2969A957AAE147078BD6AD117F8BD7C0" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_A7007462A7B48ADF2162AD11C502AC3E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_1D4127DBA59C7C878344AD1180A1DEB7" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CapitalizedContractCostGross" xlink:label="loc_us-gaap_CapitalizedContractCostGross_7C3C56BD6D22C75F8CD0AD8DCC87CD10" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_1D4127DBA59C7C878344AD1180A1DEB7" xlink:to="loc_us-gaap_CapitalizedContractCostGross_7C3C56BD6D22C75F8CD0AD8DCC87CD10" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_DF867732CD4B8483C9DDAD81E5D36164" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MovementInDeferredRevenueRollForward" xlink:label="loc_us-gaap_MovementInDeferredRevenueRollForward_3963A63BC1EB5D19D6BEAD8986A3728D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_DF867732CD4B8483C9DDAD81E5D36164" xlink:to="loc_us-gaap_MovementInDeferredRevenueRollForward_3963A63BC1EB5D19D6BEAD8986A3728D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenue" xlink:label="loc_us-gaap_DeferredRevenue_95E7D9ACD1B1C21356FCAD86D9F5941C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward_3963A63BC1EB5D19D6BEAD8986A3728D" xlink:to="loc_us-gaap_DeferredRevenue_95E7D9ACD1B1C21356FCAD86D9F5941C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenueAdditions" xlink:label="loc_us-gaap_DeferredRevenueAdditions_46D95DC3DFF1E1FAA9E5AD8723FCC085" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward_3963A63BC1EB5D19D6BEAD8986A3728D" xlink:to="loc_us-gaap_DeferredRevenueAdditions_46D95DC3DFF1E1FAA9E5AD8723FCC085" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenueRevenueRecognized1" xlink:label="loc_us-gaap_DeferredRevenueRevenueRecognized1_A802CB5F83EA4D5AA179AD873E9BF83B" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward_3963A63BC1EB5D19D6BEAD8986A3728D" xlink:to="loc_us-gaap_DeferredRevenueRevenueRecognized1_A802CB5F83EA4D5AA179AD873E9BF83B" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment" xlink:label="loc_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_F736F4607E3BD1A632EAAD890F61214E" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward_3963A63BC1EB5D19D6BEAD8986A3728D" xlink:to="loc_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_F736F4607E3BD1A632EAAD890F61214E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenue" xlink:label="loc_us-gaap_DeferredRevenue_1C93C351E3DFB3109A9DAD89B11C11B4" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward_3963A63BC1EB5D19D6BEAD8986A3728D" xlink:to="loc_us-gaap_DeferredRevenue_1C93C351E3DFB3109A9DAD89B11C11B4" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionImpactOnBalanceSheetDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_B0D6C1132797A383C572AD7E9BE33C03" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_0D4C05B017AF0619F104AD7EA1525BF3" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_B0D6C1132797A383C572AD7E9BE33C03" xlink:to="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_0D4C05B017AF0619F104AD7EA1525BF3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="loc_us-gaap_StatementScenarioAxis_3D364AB526D843A06031AD9E1CADEEC6" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_0D4C05B017AF0619F104AD7EA1525BF3" xlink:to="loc_us-gaap_StatementScenarioAxis_3D364AB526D843A06031AD9E1CADEEC6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="loc_us-gaap_ScenarioUnspecifiedDomain_310FDD85AAFB60B7CDA8AD9E1CAF9796" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementScenarioAxis_3D364AB526D843A06031AD9E1CADEEC6" xlink:to="loc_us-gaap_ScenarioUnspecifiedDomain_310FDD85AAFB60B7CDA8AD9E1CAF9796" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioPreviouslyReportedMember" xlink:label="loc_us-gaap_ScenarioPreviouslyReportedMember_5F5BD4713E165A1F63B2AD9E84F7DE20" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScenarioUnspecifiedDomain_310FDD85AAFB60B7CDA8AD9E1CAF9796" xlink:to="loc_us-gaap_ScenarioPreviouslyReportedMember_5F5BD4713E165A1F63B2AD9E84F7DE20" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestatementAdjustmentMember" xlink:label="loc_us-gaap_RestatementAdjustmentMember_6848EA9E03F343519883AD9EA3D7AA90" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScenarioUnspecifiedDomain_310FDD85AAFB60B7CDA8AD9E1CAF9796" xlink:to="loc_us-gaap_RestatementAdjustmentMember_6848EA9E03F343519883AD9EA3D7AA90" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1E928F39FACB833E6AECAD9E46AB2D46" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_0D4C05B017AF0619F104AD7EA1525BF3" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1E928F39FACB833E6AECAD9E46AB2D46" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_02B08D335DA7BC444F07AD9E46B6687C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1E928F39FACB833E6AECAD9E46AB2D46" xlink:to="loc_us-gaap_TypeOfAdoptionMember_02B08D335DA7BC444F07AD9E46B6687C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201409Member" xlink:label="loc_us-gaap_AccountingStandardsUpdate201409Member_786B14E8CEBCAE51164EAD9EC3F7EAE0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfAdoptionMember_02B08D335DA7BC444F07AD9E46B6687C" xlink:to="loc_us-gaap_AccountingStandardsUpdate201409Member_786B14E8CEBCAE51164EAD9EC3F7EAE0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_2C71D1D50B5573D0BC2EAD7EA1532D5B" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_0D4C05B017AF0619F104AD7EA1525BF3" xlink:to="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_2C71D1D50B5573D0BC2EAD7EA1532D5B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_F032BB0E864B972104CCAD84BEF14DBF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_2C71D1D50B5573D0BC2EAD7EA1532D5B" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_F032BB0E864B972104CCAD84BEF14DBF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_86FF4B113DBB9051E7BFAD84EDFAD4DD" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_2C71D1D50B5573D0BC2EAD7EA1532D5B" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_86FF4B113DBB9051E7BFAD84EDFAD4DD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenueAndCreditsCurrent" xlink:label="loc_us-gaap_DeferredRevenueAndCreditsCurrent_93169409BC36B333A4DEAD8506E4CF41" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_2C71D1D50B5573D0BC2EAD7EA1532D5B" xlink:to="loc_us-gaap_DeferredRevenueAndCreditsCurrent_93169409BC36B333A4DEAD8506E4CF41" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_557CB393648C7DE18013AD852043F37D" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_2C71D1D50B5573D0BC2EAD7EA1532D5B" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_557CB393648C7DE18013AD852043F37D" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionImpactOnStatementOfOperationsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_78E9C1CAEE78B62EE4DBAD7DC3C2B9D0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_78E9C1CAEE78B62EE4DBAD7DC3C2B9D0" xlink:to="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B1BEA17724273F35AE11ADA00C23D716" xlink:to="loc_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201409Member" xlink:label="loc_us-gaap_AccountingStandardsUpdate201409Member_F256CBF9B4524CDA755EADA00CC6BC69" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfAdoptionMember_690E39EB9AA9ECCB9990ADA00C24273F" xlink:to="loc_us-gaap_AccountingStandardsUpdate201409Member_F256CBF9B4524CDA755EADA00CC6BC69" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="loc_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:to="loc_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="loc_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementScenarioAxis_01CCB35BA46CE018ED1FADA008CA2142" xlink:to="loc_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioPreviouslyReportedMember" xlink:label="loc_us-gaap_ScenarioPreviouslyReportedMember_0778A184D5CC27F9C38EADA008F18C58" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:to="loc_us-gaap_ScenarioPreviouslyReportedMember_0778A184D5CC27F9C38EADA008F18C58" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestatementAdjustmentMember" xlink:label="loc_us-gaap_RestatementAdjustmentMember_F0C580F8994D568DCECAADA00F42BCA5" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScenarioUnspecifiedDomain_96180932D21C50E1C160ADA008CC397F" xlink:to="loc_us-gaap_RestatementAdjustmentMember_F0C580F8994D568DCECAADA00F42BCA5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_43893512FBB0297E29BEAD7DD1504045" xlink:to="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNet" xlink:label="loc_us-gaap_SalesRevenueNet_A12ED58AA460EEF9296FAD8393EA92C8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_SalesRevenueNet_A12ED58AA460EEF9296FAD8393EA92C8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_DCF5681AA1BF1C61C34DAD83AA82D3B6" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_DCF5681AA1BF1C61C34DAD83AA82D3B6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_E899E3B92EE6138C6A3DAD83C6B24EF7" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_GrossProfit_E899E3B92EE6138C6A3DAD83C6B24EF7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_705F3CC4C83D4BC41002AD83F79DE55F" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_OperatingIncomeLoss_705F3CC4C83D4BC41002AD83F79DE55F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_9631D40E6974028DAD87AD841A6B3066" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_9631D40E6974028DAD87AD841A6B3066" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_E55045D5601924B8D567AD8435B2D95D" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_E55045D5601924B8D567AD8435B2D95D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_C4E5C23309CA032A2C89AD844CB54DBB" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_NetIncomeLoss_C4E5C23309CA032A2C89AD844CB54DBB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_350C61F300E0B215DA30AD846763F3E0" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_350C61F300E0B215DA30AD846763F3E0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_0729A0C8DA613DB46140AD84846447E0" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_6E0CA02429850F0D61D4AD7DD1512C50" xlink:to="loc_us-gaap_EarningsPerShareDiluted_0729A0C8DA613DB46140AD84846447E0" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByGeographyDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_605F187365313BD665EEAD7FD6117F53" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_605F187365313BD665EEAD7FD6117F53" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementGeographicalAxis" xlink:label="loc_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1" xlink:to="loc_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementGeographicalAxis_D5DCB70D605FA18D1E53AD7FDB606A11" xlink:to="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EuropeMember" xlink:label="loc_us-gaap_EuropeMember_F904270EEDE0BCA48AE2AD978E3152EF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:to="loc_us-gaap_EuropeMember_F904270EEDE0BCA48AE2AD978E3152EF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AmericasMember" xlink:label="loc_us-gaap_AmericasMember_A0D09917BD103F6CBCEEAD97B537B9B4" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:to="loc_us-gaap_AmericasMember_A0D09917BD103F6CBCEEAD97B537B9B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_CN" xlink:label="loc_country_CN_BE08950344C90B49B82EAD97E3D72676" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:to="loc_country_CN_BE08950344C90B49B82EAD97E3D72676" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_AsiaExcludingChinaMember" xlink:label="loc_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentGeographicalDomain_661376DB85A7E3A25662AD7FDB647A59" xlink:to="loc_cgnx_AsiaExcludingChinaMember_E85A958BED4ED4A125D8AD98250C0EF3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_1EBC41A444199A66577CAD7FDB581DF1" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60FF8D5434B76F66ABC0AD85DFC660B2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_E580CF433C7A04DE0EA9AD7FDB8222E5" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60FF8D5434B76F66ABC0AD85DFC660B2" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByProductsAndServicesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_262FE2FDD3FB415322C1AD8106F60B08" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_262FE2FDD3FB415322C1AD8106F60B08" xlink:to="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductOrServiceAxis" xlink:label="loc_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40" xlink:to="loc_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductsAndServicesDomain" xlink:label="loc_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductOrServiceAxis_E215DA74122E43AFD8C4AD8E9E20FBDE" xlink:to="loc_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_StandardProductsandServicesMember" xlink:label="loc_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:to="loc_cgnx_StandardProductsandServicesMember_7310DEFB4C17658BD511AD8F3253E163" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ApplicationSpecificCustomerSolutionsMember" xlink:label="loc_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductsAndServicesDomain_733F502BEE26394569A1AD8E9E2227FF" xlink:to="loc_cgnx_ApplicationSpecificCustomerSolutionsMember_45954BC7DE0999362EC1AD8F54C17F13" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:label="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_AE85BADD79E5962820ACAD8111B7AA40" xlink:to="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_3A6F4DF51F1BFAF0AF77AD867C50948F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_7A2BE8833B243ACFCB35AD8111B82A5A" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_3A6F4DF51F1BFAF0AF77AD867C50948F" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_E88EAF2EFAC820D695D3AD117FA4300E" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="loc_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_9EEFEA6D38027BA155AEAD75BC59AA0B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_E88EAF2EFAC820D695D3AD117FA4300E" xlink:to="loc_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_9EEFEA6D38027BA155AEAD75BC59AA0B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:label="loc_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_A705E18671F5D0458816AD772689B45D" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_E88EAF2EFAC820D695D3AD117FA4300E" xlink:to="loc_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_A705E18671F5D0458816AD772689B45D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_209AE14C4D11FC20DFE5AD77E24C0455" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_E88EAF2EFAC820D695D3AD117FA4300E" xlink:to="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_209AE14C4D11FC20DFE5AD77E24C0455" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredRevenueByArrangementDisclosureTextBlock" xlink:label="loc_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_7910ED2106242DD5EE49AD7C79ABE9AA" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_E88EAF2EFAC820D695D3AD117FA4300E" xlink:to="loc_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_7910ED2106242DD5EE49AD7C79ABE9AA" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpense" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1A157E50B5C852AABD2D99A0DF5B2ECA" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CompensationRelatedCostsGeneralTextBlock" xlink:label="loc_us-gaap_CompensationRelatedCostsGeneralTextBlock_6B760275C3FA5C3CBA265695C49C91FB" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1A157E50B5C852AABD2D99A0DF5B2ECA" xlink:to="loc_us-gaap_CompensationRelatedCostsGeneralTextBlock_6B760275C3FA5C3CBA265695C49C91FB" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_BDA21A2E3BC2654C832AA73B8D22250B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_BDA21A2E3BC2654C832AA73B8D22250B" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:to="loc_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_061F6199AEB03DC433DAA73B8D23AFCE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_2A327B49144136C97173A73B8D238343" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1FB2E1097BEDBB8EFBF2A73B8D23780B" xlink:to="loc_us-gaap_EmployeeStockOptionMember_2A327B49144136C97173A73B8D238343" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:to="loc_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_4F2B872A091DB253CE4AA73B8D24E96D" xlink:to="loc_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_GeneralStockOptionPlanMember" xlink:label="loc_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_39BDA665D6758FC6DB18A73B8D24629E" xlink:to="loc_cgnx_GeneralStockOptionPlanMember_166E9E30227BB7247AB0A73B8D24D8E3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_F22DF41A99A0F9709A0AA73B8D22329A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_86A2FD71D6CDA8B90A0EA73B8D25206B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_86A2FD71D6CDA8B90A0EA73B8D25206B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_A87C5C458E0213BA8A7EA73B8D25D898" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_A87C5C458E0213BA8A7EA73B8D25D898" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ExpirationPeriodOfStockOptionPlan" xlink:label="loc_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_ExpirationPeriodOfStockOptionPlan_C2481A226CD0D885D1D3A73B8D25B759" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Vestingperiodperformancebasedrestrictedstockyears" xlink:label="loc_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_Vestingperiodperformancebasedrestrictedstockyears_FD218B642FFE3CEF531DA73B8D26E1BC" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Vestingperiodtimebasedrestrictedstockyears" xlink:label="loc_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_Vestingperiodtimebasedrestrictedstockyears_BD818DD54612D9939EE6A73B8D26D0F9" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_NumberOfGroupsWithinEmployeePopulation" xlink:label="loc_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_NumberOfGroupsWithinEmployeePopulation_64040B03B7AA9FD8CE24A73B8D26D7F0" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_F054FAC460B8FC707163A73B8D2670B5" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_8D6758CBC7B393B1BA5FA73B8D26757E" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:label="loc_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_FAFA23F891527C8B80C5A73B8D278F33" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_DDB0E40A257A580A0DEFA73B8D2722CC" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_DDB0E40A257A580A0DEFA73B8D2722CC" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" xlink:label="loc_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_2AB3AED35A3EFD1C2581A73B8D2723BC" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_60D552F0CABBBDC212E8A73B8D27AC98" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_18648559060C8D08CD1AA73B8D27A429" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_18648559060C8D08CD1AA73B8D27A429" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" xlink:label="loc_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E" xlink:type="locator" />
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_69ABD31E1B9FE07A2B0BA73B8D27E64E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_7D10247846487419138DA73B8D28B6A6" xlink:type="locator" />
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_7D10247846487419138DA73B8D28B6A6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9A0659BA82F53C2130F5A73B8D28B40C" xlink:type="locator" />
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9A0659BA82F53C2130F5A73B8D28B40C" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" xlink:label="loc_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1" xlink:type="locator" />
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_D58B856724053B1C5AB7A73B8D250B9C" xlink:to="loc_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_552D4729194A1DB75232A73B8D281CC1" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseNonvestedRestrictedStockSharesActivityDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_9B2E8754EADE772092E6A2DC9C0A7C03" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_9B2E8754EADE772092E6A2DC9C0A7C03" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_093BDA1F206484CAD97BA2DC9C0A0092" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C" xlink:to="loc_us-gaap_AwardTypeAxis_093BDA1F206484CAD97BA2DC9C0A0092" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_5ECF40460C5D3BF2E7D3A2DC9C0B1105" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_093BDA1F206484CAD97BA2DC9C0A0092" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_5ECF40460C5D3BF2E7D3A2DC9C0B1105" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="loc_us-gaap_RestrictedStockMember_3B36FE48AC58299B06C8A2DC9C0B9B58" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_5ECF40460C5D3BF2E7D3A2DC9C0B1105" xlink:to="loc_us-gaap_RestrictedStockMember_3B36FE48AC58299B06C8A2DC9C0B9B58" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_A8EAAAF3797F2370AB71A2DC9C0A0D0C" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3DA463343875B6EEE566A2DC9C0CD188" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3DA463343875B6EEE566A2DC9C0CD188" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_03FC66ACF1521F9D6B0FA2DC9C0C4242" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_03FC66ACF1521F9D6B0FA2DC9C0C4242" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_0E8F208756F0C938771BA2DC9C0CED47" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_0E8F208756F0C938771BA2DC9C0CED47" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_86F20B2CF79332D48E66A2DC9C0C30CA" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_86F20B2CF79332D48E66A2DC9C0C30CA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_086CBF7D45628AAB08B4A2DC9C0DC59D" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_44D37E370E8EB5D06EC8A2DC9C0C3140" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_086CBF7D45628AAB08B4A2DC9C0DC59D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_AC7B2B1EEB15E68DB974A2DC9C0DA6BD" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_AC7B2B1EEB15E68DB974A2DC9C0DA6BD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_46675EA292C1AC86DD42A2DC9C0DE2AD" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_46675EA292C1AC86DD42A2DC9C0DE2AD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_99CD678C72716B594F87A2DC9C0D490F" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_99CD678C72716B594F87A2DC9C0D490F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_E01ED4184AA3324D3ECAA2DC9C0ED3DA" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_E01ED4184AA3324D3ECAA2DC9C0ED3DA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_A003EDF6FE86418A2DB7A2DC9C0EFE7B" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_33B81F4E171D337754ACA2DC9C0DBEBA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_A003EDF6FE86418A2DB7A2DC9C0EFE7B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_517F140005BEDAAD32B3A2DC9C0B70EB" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_FFBE01B26AE0C2FC88DAA2DC9C0EA237" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_FFBE01B26AE0C2FC88DAA2DC9C0EA237" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested_3F4E4BA7A994A13FF5D2A2DC9C0E45F9" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_CFBCDE7533895496CCC4A2DC9C0E85D9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested_3F4E4BA7A994A13FF5D2A2DC9C0E45F9" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_4E3EC12E9AD75EF1A667BDA9BF13914D" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_B672933465985683A459D682816F997A" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_4E3EC12E9AD75EF1A667BDA9BF13914D" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_B672933465985683A459D682816F997A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_42746FA4DADD53EE995D07055E081F9D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_B672933465985683A459D682816F997A" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_42746FA4DADD53EE995D07055E081F9D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CostOfGoodsTotalMember" xlink:label="loc_us-gaap_CostOfGoodsTotalMember_77859B10CB625A1D80CC9F9973D76273" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_42746FA4DADD53EE995D07055E081F9D" xlink:to="loc_us-gaap_CostOfGoodsTotalMember_77859B10CB625A1D80CC9F9973D76273" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_F956BED64FBC5E81949B10CE815AB9BC" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_42746FA4DADD53EE995D07055E081F9D" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_F956BED64FBC5E81949B10CE815AB9BC" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_SellingGeneralAndAdministrativeMember" xlink:label="loc_cgnx_SellingGeneralAndAdministrativeMember_D96969D4008D5B7A8EB9A1449732989D" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_42746FA4DADD53EE995D07055E081F9D" xlink:to="loc_cgnx_SellingGeneralAndAdministrativeMember_D96969D4008D5B7A8EB9A1449732989D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_BB2A028FAF575366A23166B67E126F83" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_4E3EC12E9AD75EF1A667BDA9BF13914D" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_BB2A028FAF575366A23166B67E126F83" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_E56878B6C483593599F90A9E8838C413" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_BB2A028FAF575366A23166B67E126F83" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_E56878B6C483593599F90A9E8838C413" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseSummaryOfStockOptionActivityDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_700DF433A2635EFAA723F50A93762BBF" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_D193354B7C8F5A06B1FC85AB5EEB0EC0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_700DF433A2635EFAA723F50A93762BBF" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_D193354B7C8F5A06B1FC85AB5EEB0EC0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_53A7E220FF2158608D009FAED8E11F7F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_D193354B7C8F5A06B1FC85AB5EEB0EC0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_53A7E220FF2158608D009FAED8E11F7F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_D255077A56925BE6A40B49E3E5C99EB7" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_D193354B7C8F5A06B1FC85AB5EEB0EC0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_D255077A56925BE6A40B49E3E5C99EB7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_8FDC255848A15235AAC52C3E0979BD9F" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_D193354B7C8F5A06B1FC85AB5EEB0EC0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_8FDC255848A15235AAC52C3E0979BD9F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_AD5235D5AAD35872BA7C51B3B51DB208" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_D193354B7C8F5A06B1FC85AB5EEB0EC0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_AD5235D5AAD35872BA7C51B3B51DB208" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_7109ADAD071B5E34B1C7DEE219158CF9" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_D193354B7C8F5A06B1FC85AB5EEB0EC0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_7109ADAD071B5E34B1C7DEE219158CF9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_96A7701A00925E19BC9299D173050486" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_700DF433A2635EFAA723F50A93762BBF" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_96A7701A00925E19BC9299D173050486" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_ED69270DE8B95049AE1FC6B50C77E9BE" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_700DF433A2635EFAA723F50A93762BBF" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_ED69270DE8B95049AE1FC6B50C77E9BE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_FB7AFB137BAF529E8AE0E38BC49D5A9C" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_700DF433A2635EFAA723F50A93762BBF" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_FB7AFB137BAF529E8AE0E38BC49D5A9C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_08417D84F1CC519FAD2A1A9C6D3067C5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_FB7AFB137BAF529E8AE0E38BC49D5A9C" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_08417D84F1CC519FAD2A1A9C6D3067C5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_898001467ADE5BCEB9771066F8F4AE1F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_FB7AFB137BAF529E8AE0E38BC49D5A9C" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_898001467ADE5BCEB9771066F8F4AE1F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_08EF760ADBA25A67A32395898921D6FB" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_FB7AFB137BAF529E8AE0E38BC49D5A9C" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_08EF760ADBA25A67A32395898921D6FB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_11C89D2128835E7DA85801C9DA906DD2" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_FB7AFB137BAF529E8AE0E38BC49D5A9C" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_11C89D2128835E7DA85801C9DA906DD2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_40CD0B1ED9E3545A9273E3C6AA3EA65B" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_FB7AFB137BAF529E8AE0E38BC49D5A9C" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_40CD0B1ED9E3545A9273E3C6AA3EA65B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_ACFFA58576C1594FB4F4EB668D8C57D8" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_700DF433A2635EFAA723F50A93762BBF" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_ACFFA58576C1594FB4F4EB668D8C57D8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E75D35E49FFF5C3BB1D1124FB4511618" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_700DF433A2635EFAA723F50A93762BBF" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E75D35E49FFF5C3BB1D1124FB4511618" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_5023FE0AC6D05CC5875C9C581A1E04C3" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_700DF433A2635EFAA723F50A93762BBF" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_5023FE0AC6D05CC5875C9C581A1E04C3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_5CE306585C405975A642947B319D95A0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_5023FE0AC6D05CC5875C9C581A1E04C3" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_5CE306585C405975A642947B319D95A0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_AA8BDE148BBA5753A5FBE97E4263BE8A" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_5023FE0AC6D05CC5875C9C581A1E04C3" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_AA8BDE148BBA5753A5FBE97E4263BE8A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_CE35AEBB387355F5A906F9E0D515A2B2" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_5023FE0AC6D05CC5875C9C581A1E04C3" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_CE35AEBB387355F5A906F9E0D515A2B2" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_AAD227FF9136597887AAD1744068D7B5" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_700DF433A2635EFAA723F50A93762BBF" xlink:to="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_AAD227FF9136597887AAD1744068D7B5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_E20EF8AAF1AD522D9CED1D131FF4A8B5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_AAD227FF9136597887AAD1744068D7B5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_E20EF8AAF1AD522D9CED1D131FF4A8B5" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_3BF02DD633B153DC9418CEF052B0C538" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_AAD227FF9136597887AAD1744068D7B5" xlink:to="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_3BF02DD633B153DC9418CEF052B0C538" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_50472CE83EF355B5A860DDA0A5B63D54" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_AAD227FF9136597887AAD1744068D7B5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_50472CE83EF355B5A860DDA0A5B63D54" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_508B49CA029B59179125AD2BEDF3CB3A" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_E5AD33C2AD0A5E8798831838F614F1E1" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_508B49CA029B59179125AD2BEDF3CB3A" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_E5AD33C2AD0A5E8798831838F614F1E1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_81E673391A7054F0A8EB14384BF1266E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_508B49CA029B59179125AD2BEDF3CB3A" xlink:to="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_81E673391A7054F0A8EB14384BF1266E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock" xlink:label="loc_us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock_2DD3E89372C25B62957051F02EC37D5E" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_508B49CA029B59179125AD2BEDF3CB3A" xlink:to="loc_us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock_2DD3E89372C25B62957051F02EC37D5E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_0010728A4B4B5E2EA44EFF486F1436A5" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_508B49CA029B59179125AD2BEDF3CB3A" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_0010728A4B4B5E2EA44EFF486F1436A5" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedInEstimatingFairValuesOfStockOptionsGrantedDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_40F6F10FF9595BAB9AB408EC8E211877" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_62AC8C6368FF5AF9BCBA5B10FC316CFA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_40F6F10FF9595BAB9AB408EC8E211877" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_62AC8C6368FF5AF9BCBA5B10FC316CFA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_DA996E985B9B5A619126E641B3551AF5" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_40F6F10FF9595BAB9AB408EC8E211877" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_DA996E985B9B5A619126E641B3551AF5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_9CAEFAF38FD252BAB90E2454784E5C0A" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_40F6F10FF9595BAB9AB408EC8E211877" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_9CAEFAF38FD252BAB90E2454784E5C0A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_90C01A286D4F54369AFC42D0B29B7467" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_40F6F10FF9595BAB9AB408EC8E211877" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_90C01A286D4F54369AFC42D0B29B7467" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockRepurchaseProgram" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_C79CFF7061AA5905ADF8428B172375DD" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5400FC22A30956BEB83DDD302DA2324A" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_C79CFF7061AA5905ADF8428B172375DD" xlink:to="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5400FC22A30956BEB83DDD302DA2324A" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockRepurchaseProgramDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_03EB1AD0BE320E19C7DAB1724E4C35FC" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="loc_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_03EB1AD0BE320E19C7DAB1724E4C35FC" xlink:to="loc_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareRepurchaseProgramAxis" xlink:label="loc_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1" xlink:to="loc_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareRepurchaseProgramDomain" xlink:label="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareRepurchaseProgramAxis_DB1EB87E5513B481FD17B1724E4DE3A2" xlink:to="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_RepurchaseProgramApril2017Member" xlink:label="loc_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:to="loc_cgnx_RepurchaseProgramApril2017Member_E23C57996BBFA450894FB1724E4E60D9" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_RepurchaseProgramFebruary2018Member" xlink:label="loc_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:to="loc_cgnx_RepurchaseProgramFebruary2018Member_3B6958E624D76030419BB1724E4F7D6E" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_RepurchaseProgramApril2017andFebruary2018Member" xlink:label="loc_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain_70F2E3C13BF0666D560CB1724E4EA66F" xlink:to="loc_cgnx_RepurchaseProgramApril2017andFebruary2018Member_59D6BCB2714476B25E3CB1724E4F11D1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfTreasuryStockTable_E5E74B458679928EF44AB1724E4D0DD1" xlink:to="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_C415F4D783923D26B75EB1724E4F0D9F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_C415F4D783923D26B75EB1724E4F0D9F" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased" xlink:label="loc_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased_C4ADAAA3F64D167E9CBBB1783235D47C" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_StockRepurchaseProgramValue" xlink:label="loc_cgnx_StockRepurchaseProgramValue_3A991D75E61455B66235B1724E50CDB1" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_cgnx_StockRepurchaseProgramValue_3A991D75E61455B66235B1724E50CDB1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares_F88BD21FD71A21A17D2CB1724E503614" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodShares_F88BD21FD71A21A17D2CB1724E503614" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue_F6AFC0336EDE6DC905B4B1724E50FF29" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodValue_F6AFC0336EDE6DC905B4B1724E50FF29" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:label="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_F1BE60FFD53B2E696445B1724E512DD6" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_8D73948BFAC6E3889D5DB1724E4F8009" xlink:to="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_F1BE60FFD53B2E696445B1724E512DD6" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/SubsequentEvents" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaap_SubsequentEventsAbstract_D8B0650F2905555C9B5E369CF755CA7B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="loc_us-gaap_SubsequentEventsTextBlock_F9661FF61DA95240A1BC6DA0D7AC8FB7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_D8B0650F2905555C9B5E369CF755CA7B" xlink:to="loc_us-gaap_SubsequentEventsTextBlock_F9661FF61DA95240A1BC6DA0D7AC8FB7" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/SubsequentEventsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaap_SubsequentEventsAbstract_E9585FF139A241FC80A9B16C14A4503B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventTable" xlink:label="loc_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_E9585FF139A241FC80A9B16C14A4503B" xlink:to="loc_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_BE1E246FDD30B5CEABD8B16C14B0F20C" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaap_SubsequentEventMember_6DFE171DBA0CB366BB6BB16C14B29047" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_0253408339401F35B70DB16C14B00F1F" xlink:to="loc_us-gaap_SubsequentEventMember_6DFE171DBA0CB366BB6BB16C14B29047" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SubsequentEventLineItems" xlink:label="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_6CF52513C4603E2CF7D2B16C14AD12B0" xlink:to="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Dividends" xlink:label="loc_us-gaap_Dividends_D61A87164417E71C1A88B16C14B4D801" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:to="loc_us-gaap_Dividends_D61A87164417E71C1A88B16C14B4D801" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DividendPayableDateToBePaidDayMonthAndYear" xlink:label="loc_us-gaap_DividendPayableDateToBePaidDayMonthAndYear_C0F6C92C78CFD08E5A62B16C14B54BEC" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:to="loc_us-gaap_DividendPayableDateToBePaidDayMonthAndYear_C0F6C92C78CFD08E5A62B16C14B54BEC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DividendsPayableDateOfRecordDayMonthAndYear" xlink:label="loc_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_74F2CD67363055CA7B6FB16C14B50A63" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:to="loc_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear_74F2CD67363055CA7B6FB16C14B50A63" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_StockRepurchaseProgramValue" xlink:label="loc_cgnx_StockRepurchaseProgramValue_85EE1CA05334DBE46AB4B16D4C63F5F4" xlink:type="locator" />
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_57A20F480C310956F5B3B16C14B4514A" xlink:to="loc_cgnx_StockRepurchaseProgramValue_85EE1CA05334DBE46AB4B16D4C63F5F4" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/SummaryOfSignificantAccountingPolicies" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_FD3FAC4983ED52A28CC5FF6C075EE501" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_90781A7ADE28548DBA568D183CDCE28C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_FD3FAC4983ED52A28CC5FF6C075EE501" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_90781A7ADE28548DBA568D183CDCE28C" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_CA01A29EE6CD589D8E940CE764AC75C7" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="loc_us-gaap_RevenueRecognitionPolicyTextBlock_D211010C2BEF5EB8BBC2B0DC37FCF809" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CA01A29EE6CD589D8E940CE764AC75C7" xlink:to="loc_us-gaap_RevenueRecognitionPolicyTextBlock_D211010C2BEF5EB8BBC2B0DC37FCF809" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_5C5CAFEC5BDC5308923951D822B4F94E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CA01A29EE6CD589D8E940CE764AC75C7" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_5C5CAFEC5BDC5308923951D822B4F94E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/Taxes" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_797218A2CCDB5BE297205A10B1EE4850" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_3806A014FDA9554CB5A7ED8008273196" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_797218A2CCDB5BE297205A10B1EE4850" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_3806A014FDA9554CB5A7ED8008273196" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/TaxesDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_0D952EDFF9301D1E61C2AD8671165AB2" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxContingencyTable" xlink:label="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0D952EDFF9301D1E61C2AD8671165AB2" xlink:to="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B04203E6D4107EE6AD93AD867116AE83" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B04203E6D4107EE6AD93AD867116AE83" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_07324768EA1565A542CDAD867116D016" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_B04203E6D4107EE6AD93AD867116AE83" xlink:to="loc_us-gaap_TypeOfAdoptionMember_07324768EA1565A542CDAD867116D016" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201616Member" xlink:label="loc_us-gaap_AccountingStandardsUpdate201616Member_E7AD08F60E65CCA9063FAD867116CCD6" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfAdoptionMember_07324768EA1565A542CDAD867116D016" xlink:to="loc_us-gaap_AccountingStandardsUpdate201616Member_E7AD08F60E65CCA9063FAD867116CCD6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_65CA01099569F75D83D2AD8671163A91" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ForeignCountryMember" xlink:label="loc_us-gaap_ForeignCountryMember_0C90F88793E2297D652CAD8671164032" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:to="loc_us-gaap_ForeignCountryMember_0C90F88793E2297D652CAD8671164032" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DomesticCountryMember" xlink:label="loc_us-gaap_DomesticCountryMember_5B320C51C76206DF2714AD86711611FE" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_BE86974CD84A3C42864AAD8671168D35" xlink:to="loc_us-gaap_DomesticCountryMember_5B320C51C76206DF2714AD86711611FE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:to="loc_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameAxis_BF833F9C0AF7823A0AC3AD86711698D0" xlink:to="loc_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueCommissionersIrelandMember" xlink:label="loc_us-gaap_RevenueCommissionersIrelandMember_54522111F3DEAE08D7B6AD86711640CC" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:to="loc_us-gaap_RevenueCommissionersIrelandMember_54522111F3DEAE08D7B6AD86711640CC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StateAdministrationOfTaxationChinaMember" xlink:label="loc_us-gaap_StateAdministrationOfTaxationChinaMember_214E6F42FC1556243B75AD8671163680" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_61996456D8386F1F7F3EAD867116E878" xlink:to="loc_us-gaap_StateAdministrationOfTaxationChinaMember_214E6F42FC1556243B75AD8671163680" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxContingencyLineItems" xlink:label="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_6EF21756F4DCFA19B4B9AD8671168A33" xlink:to="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_250B43BB33FA05B218FEAD8686F45FD6" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_250B43BB33FA05B218FEAD8686F45FD6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_8454436C2053060E1DFFAD8671169C57" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_8454436C2053060E1DFFAD8671169C57" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_C53E7BFC9A7848E96AE1AD8671163F3E" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_C53E7BFC9A7848E96AE1AD8671163F3E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1" xlink:label="loc_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1_ED9338F877A98036993BAD867116AC69" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1_ED9338F877A98036993BAD867116AC69" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_9B39CBE1D0FDBB8A5B96AD867116FA94" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_9B39CBE1D0FDBB8A5B96AD867116FA94" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_6BE1A0214B8EBB49C580AD8689F17559" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_25BC6E0BDF2C50666424AD86711664AF" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_6BE1A0214B8EBB49C580AD8689F17559" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear" xlink:label="loc_us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear_F39E04A067DA357D4D7CAD86711654BA" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0D952EDFF9301D1E61C2AD8671165AB2" xlink:to="loc_us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear_F39E04A067DA357D4D7CAD86711654BA" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_IncreaseDecreaseInterestAndPenalties" xlink:label="loc_cgnx_IncreaseDecreaseInterestAndPenalties_C982C5F1311C7632292EAD8671161A41" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0D952EDFF9301D1E61C2AD8671165AB2" xlink:to="loc_cgnx_IncreaseDecreaseInterestAndPenalties_C982C5F1311C7632292EAD8671161A41" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_LiabilityForUncertainTaxPositions" xlink:label="loc_cgnx_LiabilityForUncertainTaxPositions_8E2546B52F5E08A09F12AD86711662DC" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0D952EDFF9301D1E61C2AD8671165AB2" xlink:to="loc_cgnx_LiabilityForUncertainTaxPositions_8E2546B52F5E08A09F12AD86711662DC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:label="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_4F8B66AB77B683B5EE8DAD8671166D9D" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0D952EDFF9301D1E61C2AD8671165AB2" xlink:to="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_4F8B66AB77B683B5EE8DAD8671166D9D" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets" xlink:label="loc_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets_48F958ECA186F04017BCAD867116A8D2" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0D952EDFF9301D1E61C2AD8671165AB2" xlink:to="loc_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets_48F958ECA186F04017BCAD867116A8D2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_C23022444449F9612F9CAD8671163C73" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0D952EDFF9301D1E61C2AD8671165AB2" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_C23022444449F9612F9CAD8671163C73" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves" xlink:label="loc_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_777FE9511D54E6457372AD867116BAB3" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0D952EDFF9301D1E61C2AD8671165AB2" xlink:to="loc_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_777FE9511D54E6457372AD867116BAB3" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves" xlink:label="loc_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_062615222AAB4189D318AD8671164CDC" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0D952EDFF9301D1E61C2AD8671165AB2" xlink:to="loc_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves_062615222AAB4189D318AD8671164CDC" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_TaxyearsopentoexaminationbyInternalRevenueService" xlink:label="loc_cgnx_TaxyearsopentoexaminationbyInternalRevenueService_196B8B6D00829328F42AAD86711693CB" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0D952EDFF9301D1E61C2AD8671165AB2" xlink:to="loc_cgnx_TaxyearsopentoexaminationbyInternalRevenueService_196B8B6D00829328F42AAD86711693CB" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities" xlink:label="loc_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_865427AB635FBBC4AA79AD867120A194" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0D952EDFF9301D1E61C2AD8671165AB2" xlink:to="loc_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_865427AB635FBBC4AA79AD867120A194" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/TaxesReconciliationOfUnitedStatesFederalStatutoryCorporateTaxRateToCompanysEffectiveTaxRateOrIncomeTaxProvisionDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_8D45FC7097471D505C7DAD89DB683835" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_F3C70FFE3A2D0F1A7C98AD89DB694393" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8D45FC7097471D505C7DAD89DB683835" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_F3C70FFE3A2D0F1A7C98AD89DB694393" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_6B20A7C36636C27167E7AD89DB6ADF05" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8D45FC7097471D505C7DAD89DB683835" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_6B20A7C36636C27167E7AD89DB6ADF05" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_FDD272B698966A5A6F93AD89DB6A44F3" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8D45FC7097471D505C7DAD89DB683835" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_FDD272B698966A5A6F93AD89DB6A44F3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1C79F95A2C9F1BFE089AAD89DB6BFAE5" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8D45FC7097471D505C7DAD89DB683835" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits_1C79F95A2C9F1BFE089AAD89DB6BFAE5" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_B3F847E903E5D22AEB92AD89DB6CE665" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8D45FC7097471D505C7DAD89DB683835" xlink:to="loc_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017_B3F847E903E5D22AEB92AD89DB6CE665" xlink:type="arc" />
    <link:loc xlink:href="cgnx-20180930.xsd#cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CF5667D421D88655D941AD89DB6CAC2C" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8D45FC7097471D505C7DAD89DB683835" xlink:to="loc_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent_CF5667D421D88655D941AD89DB6CAC2C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_5274CFBC2E292EFB7132AD89DB6C66E5" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8D45FC7097471D505C7DAD89DB683835" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_5274CFBC2E292EFB7132AD89DB6C66E5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_A4D9B830EC9CD8F173D7AD89DB6CF99C" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8D45FC7097471D505C7DAD89DB683835" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_A4D9B830EC9CD8F173D7AD89DB6CF99C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_3DD93638B33EADD9D87CAD89DB6D2EC0" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8D45FC7097471D505C7DAD89DB683835" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_3DD93638B33EADD9D87CAD89DB6D2EC0" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/TaxesTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_49AF2E39129552539141612461789FA9" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_0C7304572B1052BD8C072ED864A97627" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_49AF2E39129552539141612461789FA9" xlink:to="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_0C7304572B1052BD8C072ED864A97627" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WarrantyObligations" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_F88E4D950BAA55B5B9B3AEE57C5A57B8" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantyDisclosureTextBlock" xlink:label="loc_us-gaap_ProductWarrantyDisclosureTextBlock_848F2EF42AE05473B7965EF49CF96BDA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_F88E4D950BAA55B5B9B3AEE57C5A57B8" xlink:to="loc_us-gaap_ProductWarrantyDisclosureTextBlock_848F2EF42AE05473B7965EF49CF96BDA" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WarrantyObligationsChangesInWarrantyObligationsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_D30B3619EEEC5A7FBEBDD3DDB0FAA044" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MovementInStandardProductWarrantyAccrualRollForward" xlink:label="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_FEF026551DC35E93A92477770CA538C3" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_D30B3619EEEC5A7FBEBDD3DDB0FAA044" xlink:to="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_FEF026551DC35E93A92477770CA538C3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="loc_us-gaap_ProductWarrantyAccrual_210329DBE6AA51EBA5360B36D9594F74" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_FEF026551DC35E93A92477770CA538C3" xlink:to="loc_us-gaap_ProductWarrantyAccrual_210329DBE6AA51EBA5360B36D9594F74" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:label="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued_F18E50DFD9C252FCA23C133BDC27DBAC" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_FEF026551DC35E93A92477770CA538C3" xlink:to="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued_F18E50DFD9C252FCA23C133BDC27DBAC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantyAccrualPayments" xlink:label="loc_us-gaap_ProductWarrantyAccrualPayments_C4DF68DA56825AFDA683E5FB4EA364B3" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_FEF026551DC35E93A92477770CA538C3" xlink:to="loc_us-gaap_ProductWarrantyAccrualPayments_C4DF68DA56825AFDA683E5FB4EA364B3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss" xlink:label="loc_us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss_4BD3D6BBB83D5B1A89CEF5F81FBCAD23" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_FEF026551DC35E93A92477770CA538C3" xlink:to="loc_us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss_4BD3D6BBB83D5B1A89CEF5F81FBCAD23" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="loc_us-gaap_ProductWarrantyAccrual_F820C80ACE255872931E004F0E0550F0" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_FEF026551DC35E93A92477770CA538C3" xlink:to="loc_us-gaap_ProductWarrantyAccrual_F820C80ACE255872931E004F0E0550F0" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WarrantyObligationsTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_2A6BA0AF7E6D5F6E84506CAB7AADBF5F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_9025343193BC52DF98B54A0B773FC1B3" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_2A6BA0AF7E6D5F6E84506CAB7AADBF5F" xlink:to="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_9025343193BC52DF98B54A0B773FC1B3" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WeightedAverageShares" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_F438C66963B65D3CA6E06F7294DD3534" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_7A7D145A04305F5895018F58676303A8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_F438C66963B65D3CA6E06F7294DD3534" xlink:to="loc_us-gaap_EarningsPerShareTextBlock_7A7D145A04305F5895018F58676303A8" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesCalculationOfWeightedAverageSharesDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_958F9393E5A35CB4885A5BC37EC2A20E" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_95F60FA38FD25798996BA56CA8B1E6CD" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_958F9393E5A35CB4885A5BC37EC2A20E" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_95F60FA38FD25798996BA56CA8B1E6CD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_0C2C355954A55C3C934A1BDF9D378BE0" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_958F9393E5A35CB4885A5BC37EC2A20E" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_0C2C355954A55C3C934A1BDF9D378BE0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_89981E34B9B55F4DB5A82126AA2A3D1D" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_958F9393E5A35CB4885A5BC37EC2A20E" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_89981E34B9B55F4DB5A82126AA2A3D1D" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_B658D540EAA45593B9C55FD1916A45C8" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_6C1D4D3BE96552FBA1A67A723DDD69CD" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_B658D540EAA45593B9C55FD1916A45C8" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_6C1D4D3BE96552FBA1A67A723DDD69CD" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_BA25FF214133557CB1898432FA2D7CA7" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_8BC969DE3B8A5E4DA9E311E3390410AE" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_BA25FF214133557CB1898432FA2D7CA7" xlink:to="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_8BC969DE3B8A5E4DA9E311E3390410AE" xlink:type="arc" />
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6764397344">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document and Entity Information<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2018 </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_DocumentAndEntityInformationAbstract', window );"><strong>Document And Entity Information [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_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">COGNEX CORP<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<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_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Large Accelerated Filer<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">10-Q<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Sep. 30,  2018<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_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2018<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_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q3<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_AmendmentFlag', window );">Amendment Flag</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_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="nump">172,191,187<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_DocumentAndEntityInformationAbstract">
<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>Document and entity information.</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;">cgnx_DocumentAndEntityInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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>If the value is true, then the document is an amendment to previously-filed/accepted document.</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_CurrentFiscalYearEndDate">
<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>End date of current fiscal year in the format --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_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>This is focus fiscal period of the document report. For a first quarter 2006 quarterly report, which may also provide financial information from prior periods, the first fiscal quarter should be given as the fiscal period focus. Values: FY, Q1, Q2, Q3, Q4, H1, H2, M9, T1, T2, T3, M8, CY.</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_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>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.</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_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_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 12b<br> -Subsection 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_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="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_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<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 whether the registrant is one of the following: (1) Large Accelerated Filer, (2) Accelerated Filer, (3) Non-accelerated Filer, (4) Smaller Reporting Company (Non-accelerated) or (5) Smaller Reporting Accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="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_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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 12b<br> -Subsection 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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R2.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6771799760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Operations - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_IncomeStatementAbstract', window );"><strong>Income Statement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalesRevenueNet', window );">Revenue</a></td>
<td class="nump">$ 232,221<span></span>
</td>
<td class="nump">$ 266,042<span></span>
</td>
<td class="nump">$ 613,052<span></span>
</td>
<td class="nump">$ 583,161<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_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of revenue</a></td>
<td class="nump">58,860<span></span>
</td>
<td class="nump">68,061<span></span>
</td>
<td class="nump">153,227<span></span>
</td>
<td class="nump">142,757<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross margin</a></td>
<td class="nump">173,361<span></span>
</td>
<td class="nump">197,981<span></span>
</td>
<td class="nump">459,825<span></span>
</td>
<td class="nump">440,404<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_us-gaap_ResearchAndDevelopmentExpense', window );">Research, development, and engineering expenses</a></td>
<td class="nump">29,700<span></span>
</td>
<td class="nump">26,078<span></span>
</td>
<td class="nump">87,664<span></span>
</td>
<td class="nump">72,225<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_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general, and administrative expenses</a></td>
<td class="nump">65,817<span></span>
</td>
<td class="nump">61,054<span></span>
</td>
<td class="nump">196,266<span></span>
</td>
<td class="nump">160,093<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">77,844<span></span>
</td>
<td class="nump">110,849<span></span>
</td>
<td class="nump">175,895<span></span>
</td>
<td class="nump">208,086<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_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Foreign currency gain (loss)</a></td>
<td class="num">(379)<span></span>
</td>
<td class="num">(127)<span></span>
</td>
<td class="num">(708)<span></span>
</td>
<td class="num">(574)<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_us-gaap_InvestmentIncomeNonoperating', window );">Investment income</a></td>
<td class="nump">3,937<span></span>
</td>
<td class="nump">2,475<span></span>
</td>
<td class="nump">10,736<span></span>
</td>
<td class="nump">6,625<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_us-gaap_OtherNonoperatingIncomeExpense', window );">Other income (expense)</a></td>
<td class="num">(129)<span></span>
</td>
<td class="num">(445)<span></span>
</td>
<td class="num">(98)<span></span>
</td>
<td class="num">(344)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments', window );">Income before income tax expense</a></td>
<td class="nump">81,273<span></span>
</td>
<td class="nump">112,752<span></span>
</td>
<td class="nump">185,825<span></span>
</td>
<td class="nump">213,793<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_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense (benefit)</a></td>
<td class="nump">837<span></span>
</td>
<td class="nump">10,259<span></span>
</td>
<td class="nump">11,976<span></span>
</td>
<td class="nump">9,334<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income</a></td>
<td class="nump">$ 80,436<span></span>
</td>
<td class="nump">$ 102,493<span></span>
</td>
<td class="nump">$ 173,849<span></span>
</td>
<td class="nump">$ 204,459<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_us-gaap_EarningsPerShareDilutedAbstract', window );"><strong>Net income per weighted-average common and common-equivalent share:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare', window );">Basic (usd per share)</a></td>
<td class="nump">$ 0.47<span></span>
</td>
<td class="nump">$ 0.59<span></span>
</td>
<td class="nump">$ 1.01<span></span>
</td>
<td class="nump">$ 1.18<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_us-gaap_EarningsPerShareDiluted', window );">Diluted (usd per share)</a></td>
<td class="nump">$ 0.45<span></span>
</td>
<td class="nump">$ 0.57<span></span>
</td>
<td class="nump">$ 0.98<span></span>
</td>
<td class="nump">$ 1.14<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_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted-average common and common-equivalent shares outstanding:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic (shares)</a></td>
<td class="nump">172,189<span></span>
</td>
<td class="nump">173,234<span></span>
</td>
<td class="nump">172,613<span></span>
</td>
<td class="nump">173,052<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_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted (shares)</a></td>
<td class="nump">177,245<span></span>
</td>
<td class="nump">179,354<span></span>
</td>
<td class="nump">178,021<span></span>
</td>
<td class="nump">179,124<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_us-gaap_CommonStockDividendsPerShareCashPaid', window );">Cash dividends per common share (usd per share)</a></td>
<td class="nump">$ 0.0450<span></span>
</td>
<td class="nump">$ 0.0425<span></span>
</td>
<td class="nump">$ 0.1350<span></span>
</td>
<td class="nump">$ 0.1225<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockDividendsPerShareCashPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Aggregate dividends paid during the period for each share of common stock outstanding.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<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;">us-gaap_CommonStockDividendsPerShareCashPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<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 amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<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;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDilutedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_EarningsPerShareDilutedAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6450222&amp;loc=d3e30840-110895<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=64836518&amp;loc=d3e30700-110894<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=64836518&amp;loc=d3e30690-110894<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;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments">
<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>Amount of income (loss) from continuing operations before deduction of income tax expense (benefit) and income (loss) attributable to noncontrolling interest, and addition of income (loss) from equity method investments.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(h)(1)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<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;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare">
<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 amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-03(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20187-122688<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 6: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br><br>Reference 7: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1252-109256<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;">us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementAbstract">
<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 );">- References</a><div><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;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a),(b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<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;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIncomeNonoperating">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 aggregate amount of income from investments (for example, dividends) not considered a component of the entity's core operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_InvestmentIncomeNonoperating</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 net result for the period of deducting operating expenses from operating revenues.</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;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of income (expense) related to nonoperating activities, classified as other.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<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;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SalesRevenueNet">
<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>Total revenue from sale of goods and services rendered during the reporting period, in the normal course of business, reduced by sales returns and allowances, and sales discounts.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_SalesRevenueNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 30<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=68048583&amp;loc=d3e3636-108311<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;">us-gaap_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1505-109256<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<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;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1448-109256<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;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R3.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6771531920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Comprehensive Income - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Statement of Comprehensive Income [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 80,436<span></span>
</td>
<td class="nump">$ 102,493<span></span>
</td>
<td class="nump">$ 173,849<span></span>
</td>
<td class="nump">$ 204,459<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_cgnx_CashflowshedgesAbstract', window );"><strong>Cash flow hedges:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax', window );">Net unrealized gain (loss), net of tax of $0 and ($8) in the three-month periods and net of tax of $0 and ($5) in the nine-month periods, respectively</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(4)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(16)<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_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax', window );">Reclassification of net realized (gain) loss into current operations</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(56)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(21)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax', window );">Net change related to cash flow hedges</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(60)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(37)<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_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract', window );"><strong>Available-for-sale investments:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax', window );">Net unrealized gain (loss), net of tax of $24 and $41 in the three-month periods and net of tax of ($82) and $191 in the nine-month periods, respectively</a></td>
<td class="nump">522<span></span>
</td>
<td class="nump">419<span></span>
</td>
<td class="num">(180)<span></span>
</td>
<td class="nump">1,237<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_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax', window );">Reclassification of net realized (gain) loss into current operations</a></td>
<td class="num">(266)<span></span>
</td>
<td class="num">(263)<span></span>
</td>
<td class="num">(535)<span></span>
</td>
<td class="num">(370)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent', window );">Net change related to available-for-sale investments</a></td>
<td class="nump">256<span></span>
</td>
<td class="nump">156<span></span>
</td>
<td class="num">(715)<span></span>
</td>
<td class="nump">867<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_cgnx_CurrencytranslationadjustmentsAbstract', window );"><strong>Foreign currency translation adjustments:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustments</a></td>
<td class="num">(1,881)<span></span>
</td>
<td class="nump">5,753<span></span>
</td>
<td class="num">(5,078)<span></span>
</td>
<td class="nump">18,497<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss), net of tax</a></td>
<td class="num">(1,625)<span></span>
</td>
<td class="nump">5,849<span></span>
</td>
<td class="num">(5,793)<span></span>
</td>
<td class="nump">19,327<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Total comprehensive income</a></td>
<td class="nump">$ 78,811<span></span>
</td>
<td class="nump">$ 108,342<span></span>
</td>
<td class="nump">$ 168,056<span></span>
</td>
<td class="nump">$ 223,786<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_CashflowshedgesAbstract">
<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>Cash flows hedges [Abstract]</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;">cgnx_CashflowshedgesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_CurrencytranslationadjustmentsAbstract">
<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>Currency translation adjustments [Abstract]</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;">cgnx_CurrencytranslationadjustmentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e557-108580<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;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after tax and reclassification adjustments, of appreciation (loss) in value of unsold available-for-sale securities, attributable to parent entity. Excludes amounts related to other than temporary impairment (OTTI) loss.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=96868048&amp;loc=SL4569643-111683<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=84161450&amp;loc=SL4573702-111684<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=96868048&amp;loc=SL4569616-111683<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;">us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax">
<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>Amount after tax and reclassification adjustments, of increase (decrease) in accumulated gain (loss) from derivative instruments designated and qualifying as the effective portion of cash flow hedges and an entity's share of an equity investee's increase (decrease) in deferred hedging gain (loss).</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=SL7669646-108580<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;">us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (b,c)<br> -URI http://asc.fasb.org/extlink&amp;oid=64808268&amp;loc=d3e32211-110900<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=SL7669646-108580<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;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after tax of other comprehensive income (loss) attributable to parent entity.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=84161450&amp;loc=SL4573702-111684<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=96868048&amp;loc=SL4569616-111683<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=96868048&amp;loc=SL4569643-111683<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;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after tax of reclassification adjustment from accumulated other comprehensive income for unrealized gain (loss) realized upon the sale of available-for-sale securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27357-111563<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e637-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e689-108580<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;">us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax">
<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>Amount after tax of reclassification adjustment from accumulated other comprehensive income of accumulated gain (loss) realized from derivative instruments designated and qualifying as the effective portion of cash flow hedges and an entity's share of an equity investee's deferred hedging gain (loss).</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e689-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph c<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=d3e41638-113959<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e637-108580<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;">us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax">
<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>Amount after tax of increase (decrease) in accumulated gain (loss) from derivative instruments designated and qualifying as the effective portion of cash flow hedges and an entity's share of an equity investee's increase (decrease) in deferred hedging gain (loss).</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=SL7669646-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e637-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6441202&amp;loc=d3e80720-113993<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5624171-113959<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;">us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax">
<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>Amount after tax, before reclassification adjustments, of unrealized holding gain (loss) on available-for-sale securities.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=SL7669646-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e637-108580<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;">us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R4.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6764391616">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Comprehensive Income (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Statement of Comprehensive Income [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax', window );">Tax effect on cash flow hedges</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">$ (8)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">$ (5)<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_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax', window );">Tax effect of unrealized gain (loss) on available-for-sale investments</a></td>
<td class="nump">24<span></span>
</td>
<td class="nump">41<span></span>
</td>
<td class="num">(82)<span></span>
</td>
<td class="nump">191<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_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax', window );">Tax effect of foreign currency translation adjustment</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax">
<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>Amount of tax expense (benefit), before reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=64808268&amp;loc=d3e32211-110900<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e640-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=SL7669646-108580<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;">us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax">
<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>Amount of tax expense (benefit), after reclassification adjustments, of increase (decrease) in accumulated gain (loss) from derivative instruments designated and qualifying as the effective portion of cash flow hedges and an entity's share of an equity investee's increase (decrease) in deferred hedging gain (loss).</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=SL7669646-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e640-108580<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;">us-gaap_OtherComprehensiveIncomeLossDerivativesQualifyingAsHedgesTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax">
<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>Amount of tax expense (benefit) before reclassification adjustments of unrealized holding gain (loss) on available-for-sale securities.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e640-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (e,f)<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=SL7669646-108580<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;">us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R5.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6771774304">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</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_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 107,371<span></span>
</td>
<td class="nump">$ 106,582<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_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Short-term investments</a></td>
<td class="nump">420,016<span></span>
</td>
<td class="nump">297,961<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_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, less reserves of $1,508 and $1,568 in 2018 and 2017, respectively</a></td>
<td class="nump">135,441<span></span>
</td>
<td class="nump">119,388<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_us-gaap_UnbilledReceivablesCurrent', window );">Unbilled revenue</a></td>
<td class="nump">13,948<span></span>
</td>
<td class="nump">7,454<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_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">94,035<span></span>
</td>
<td class="nump">67,923<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_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">27,687<span></span>
</td>
<td class="nump">30,683<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">798,498<span></span>
</td>
<td class="nump">629,991<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_us-gaap_LongTermInvestments', window );">Long-term investments</a></td>
<td class="nump">281,929<span></span>
</td>
<td class="nump">423,441<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_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant, and equipment, net</a></td>
<td class="nump">88,930<span></span>
</td>
<td class="nump">78,048<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_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">113,208<span></span>
</td>
<td class="nump">113,208<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_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets, net</a></td>
<td class="nump">10,882<span></span>
</td>
<td class="nump">13,189<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_us-gaap_DeferredTaxAssetsNetNoncurrent', window );">Deferred income taxes</a></td>
<td class="nump">27,376<span></span>
</td>
<td class="nump">27,385<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_us-gaap_OtherAssetsNoncurrent', window );">Other assets</a></td>
<td class="nump">3,873<span></span>
</td>
<td class="nump">2,491<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">1,324,696<span></span>
</td>
<td class="nump">1,287,753<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_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">22,295<span></span>
</td>
<td class="nump">23,463<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_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued expenses</a></td>
<td class="nump">66,632<span></span>
</td>
<td class="nump">68,249<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_us-gaap_AccruedIncomeTaxesCurrent', window );">Accrued income taxes</a></td>
<td class="nump">8,974<span></span>
</td>
<td class="nump">11,503<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_us-gaap_DeferredRevenueAndCreditsCurrent', window );">Deferred revenue and customer deposits</a></td>
<td class="nump">13,252<span></span>
</td>
<td class="nump">9,420<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">111,153<span></span>
</td>
<td class="nump">112,635<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_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred income taxes</a></td>
<td class="nump">372<span></span>
</td>
<td class="nump">312<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_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent', window );">Reserve for income taxes</a></td>
<td class="nump">6,646<span></span>
</td>
<td class="nump">6,488<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_us-gaap_AccruedIncomeTaxes', window );">Accrued income taxes</a></td>
<td class="nump">51,607<span></span>
</td>
<td class="nump">66,741<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_us-gaap_OtherLiabilitiesNoncurrent', window );">Other non-current liabilities</a></td>
<td class="nump">5,474<span></span>
</td>
<td class="nump">5,904<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">175,252<span></span>
</td>
<td class="nump">192,080<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_us-gaap_StockholdersEquityAbstract', window );"><strong>Shareholders&#8217; equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockValueOutstanding', window );">Common stock, $.002 par value &#8211; Authorized: 300,000 and 200,000 shares in 2018 and 2017, respectively, issued and outstanding: 172,191 and 173,507 shares in 2018 and 2017, respectively</a></td>
<td class="nump">345<span></span>
</td>
<td class="nump">347<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_us-gaap_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">518,556<span></span>
</td>
<td class="nump">461,338<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">670,935<span></span>
</td>
<td class="nump">668,587<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_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss, net of tax</a></td>
<td class="num">(40,392)<span></span>
</td>
<td class="num">(34,599)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total shareholders&#8217; equity</a></td>
<td class="nump">1,149,444<span></span>
</td>
<td class="nump">1,095,673<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and shareholders' equity</a></td>
<td class="nump">$ 1,324,696<span></span>
</td>
<td class="nump">$ 1,287,753<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount due from customers or clients, within one year of the balance sheet date (or the normal operating cycle, whichever is longer), for goods or services (including trade receivables) that have been delivered or sold in the normal course of business, reduced to the estimated net realizable fair value by an allowance established by the entity of the amount it deems uncertain of collection.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all domestic and foreign income tax obligations due.  This amount is the total of current and noncurrent accrued income taxes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32718-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<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;">us-gaap_AccruedIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedIncomeTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(b)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<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;">us-gaap_AccruedIncomeTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e637-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e681-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=SL7669686-108580<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;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapitalCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_AdditionalPaidInCapitalCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<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;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6801-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<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;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of investments in debt securities classified as available-for-sale, expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 25<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=75030427&amp;loc=d3e22054-111558<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=82896770&amp;loc=d3e26626-111562<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;">us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3044-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValueOutstanding">
<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>Value of all classes of common stock held by shareholders. May be all or portion of the number of common shares authorized. These shares exclude common shares repurchased by the entity and held as treasury shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_CommonStockValueOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilitiesNet">
<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>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84176650&amp;loc=d3e31931-109318<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;">us-gaap_DeferredIncomeTaxLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenueAndCreditsCurrent">
<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>Total carrying amount of consideration received or receivable as of the balance sheet date on potential earnings that were not recognized as revenue or other forms of income in conformity with GAAP, and which are expected to be recognized as such within one year or the normal operating cycle, if longer.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.3(b).Q1(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.3(b).Q2)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.3(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 13.A.Q4)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.4(a).Q1)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 6: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.3(c).Q3)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 7: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 8: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<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;">us-gaap_DeferredRevenueAndCreditsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsNetNoncurrent">
<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>Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards classified as noncurrent.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84176650&amp;loc=d3e31931-109318<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=84176650&amp;loc=d3e31928-109318<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=84176650&amp;loc=d3e31958-109318<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=84176650&amp;loc=d3e31917-109318<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;">us-gaap_DeferredTaxAssetsNetNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<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>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=35741047&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388280&amp;loc=d3e13770-109266<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=77989000&amp;loc=SL49117168-202975<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;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=68049868&amp;loc=d3e3927-108312<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<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;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount recognized for uncertainty in income taxes classified as noncurrent.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_LiabilityForUncertainTaxPositionsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.12)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_LongTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsNoncurrent">
<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>Amount of noncurrent assets classified as other.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent">
<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>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<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;">us-gaap_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<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;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 cumulative amount of the reporting entity's undistributed earnings or deficit.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=27010918&amp;loc=d3e74512-122707<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnbilledReceivablesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_UnbilledReceivablesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R6.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6757784848">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</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_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Reserves for accounts receivable</a></td>
<td class="nump">$ 1,501<span></span>
</td>
<td class="nump">$ 1,568<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_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value</a></td>
<td class="nump">$ 0.002<span></span>
</td>
<td class="nump">$ 0.002<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized</a></td>
<td class="nump">300,000,000<span></span>
</td>
<td class="nump">200,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued</a></td>
<td class="nump">172,032,000<span></span>
</td>
<td class="nump">173,507,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 valuation allowance for trade and other receivables due to an Entity within one year (or the normal operating cycle, whichever is longer) that are expected to be uncollectible.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=84173941&amp;loc=d3e5074-111524<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;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Face amount or stated value per share of common stock.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 maximum number of common shares permitted to be issued by an entity's charter and bylaws.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<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 );">- References</a><div><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;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R7.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6771627504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash flows from operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 173,849<span></span>
</td>
<td class="nump">$ 204,459<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_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash provided by operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockOptionPlanExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">31,339<span></span>
</td>
<td class="nump">23,355<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_us-gaap_Depreciation', window );">Depreciation of property, plant, and equipment</a></td>
<td class="nump">13,474<span></span>
</td>
<td class="nump">9,811<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_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of intangible assets</a></td>
<td class="nump">2,307<span></span>
</td>
<td class="nump">2,539<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_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments', window );">Amortization of discounts or premiums on investments</a></td>
<td class="nump">123<span></span>
</td>
<td class="nump">188<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_us-gaap_GainLossOnSaleOfInvestments', window );">Realized (gain) loss on sale of investments</a></td>
<td class="num">(535)<span></span>
</td>
<td class="num">(370)<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_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1', window );">Revaluation of contingent consideration</a></td>
<td class="num">(50)<span></span>
</td>
<td class="nump">88<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_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes', window );">Change in deferred income taxes</a></td>
<td class="nump">175<span></span>
</td>
<td class="num">(1,830)<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_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="num">(18,136)<span></span>
</td>
<td class="num">(58,379)<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_us-gaap_IncreaseDecreaseInUnbilledReceivables', window );">Unbilled revenue</a></td>
<td class="num">(6,542)<span></span>
</td>
<td class="num">(46,010)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(27,699)<span></span>
</td>
<td class="num">(18,550)<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_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid expenses and other current assets</a></td>
<td class="num">(3,437)<span></span>
</td>
<td class="num">(14,666)<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_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="num">(1,182)<span></span>
</td>
<td class="nump">19,132<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_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Accrued expenses</a></td>
<td class="nump">2,266<span></span>
</td>
<td class="nump">8,819<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_us-gaap_IncreaseDecreaseInAccruedTaxesPayable', window );">Accrued income taxes</a></td>
<td class="num">(17,497)<span></span>
</td>
<td class="nump">3,724<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_us-gaap_IncreaseDecreaseInDeferredRevenue', window );">Deferred revenue and customer deposits</a></td>
<td class="nump">4,841<span></span>
</td>
<td class="nump">5,883<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_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet', window );">Other</a></td>
<td class="num">(1,604)<span></span>
</td>
<td class="nump">1,861<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by operating activities</a></td>
<td class="nump">151,692<span></span>
</td>
<td class="nump">140,054<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_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireInvestments', window );">Purchases of investments</a></td>
<td class="num">(616,047)<span></span>
</td>
<td class="num">(415,508)<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_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments', window );">Maturities and sales of investments</a></td>
<td class="nump">635,119<span></span>
</td>
<td class="nump">428,076<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_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchases of property, plant, and equipment</a></td>
<td class="num">(27,356)<span></span>
</td>
<td class="num">(20,044)<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_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Cash paid for acquisition of business</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(24,118)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_PaymentsForDivestitureofBusinesses', window );">Net cash provided by (used in) investing activities</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(291)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash provided by (used in) investing activities</a></td>
<td class="num">(8,284)<span></span>
</td>
<td class="num">(31,885)<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_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions', window );">Issuance of common stock under stock plans</a></td>
<td class="nump">25,882<span></span>
</td>
<td class="nump">44,750<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_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Repurchase of common stock</a></td>
<td class="num">(142,262)<span></span>
</td>
<td class="num">(99,347)<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_us-gaap_PaymentsOfDividendsCommonStock', window );">Payment of dividends</a></td>
<td class="num">(23,283)<span></span>
</td>
<td class="num">(21,236)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_Paymentofcontingentconsideration', window );">Payment of contingent consideration</a></td>
<td class="num">(1,000)<span></span>
</td>
<td class="num">(1,926)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash provided by (used in) financing activities</a></td>
<td class="num">(140,663)<span></span>
</td>
<td class="num">(77,759)<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_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents', window );">Effect of foreign exchange rate changes on cash and cash equivalents</a></td>
<td class="num">(1,956)<span></span>
</td>
<td class="nump">1,298<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease', window );">Net change in cash and cash equivalents</a></td>
<td class="nump">789<span></span>
</td>
<td class="nump">31,708<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_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents at beginning of period</a></td>
<td class="nump">106,582<span></span>
</td>
<td class="nump">79,641<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_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents at end of period</a></td>
<td class="nump">$ 107,371<span></span>
</td>
<td class="nump">$ 111,349<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_Paymentofcontingentconsideration">
<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>Payment of contingent consideration from a business combination</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;">cgnx_Paymentofcontingentconsideration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_PaymentsForDivestitureofBusinesses">
<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>Payments For Divestiture of Businesses</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;">cgnx_PaymentsForDivestitureofBusinesses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments">
<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 sum of the periodic adjustments of the differences between securities' face values and purchase prices that are charged against earnings. This is called accretion if the security was purchased at a discount and amortization if it was purchased at premium. As a noncash item, this element is an adjustment to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<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;">us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1">
<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>Amount of increase (decrease) in the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e7008-128479<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;">us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<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>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3044-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease">
<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>Amount of increase (decrease) in cash and cash equivalents. Cash and cash equivalents are the amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Includes effect from exchange rate changes.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3521-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=98513438&amp;loc=d3e33268-110906<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;">us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<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;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents">
<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>Amount of increase (decrease) from the effect of exchange rate changes on cash and cash equivalent balances held in foreign currencies.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=98513438&amp;loc=d3e33268-110906<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;">us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnSaleOfInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 net realized gain (loss) on investments sold during the period, not including gains (losses) on securities separately or otherwise categorized as trading, available-for-sale, or held-to-maturity, which, for cash flow reporting, is a component of proceeds from investing activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<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;">us-gaap_GainLossOnSaleOfInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedTaxesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 increase (decrease) during the reporting period of all taxes owed but not paid, including income, property and other taxes.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_IncreaseDecreaseInAccruedTaxesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes">
<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 increase (decrease) during the reporting period in the account that represents the temporary difference that results from Income or Loss that is recognized for accounting purposes but not for tax purposes and vice versa.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInDeferredIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInDeferredRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 increase (decrease) during the reporting period, excluding the portion taken into income, in the liability reflecting revenue yet to be earned for which cash or other forms of consideration was received or recorded as a receivable.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInDeferredRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of increase (decrease) in operating assets after deduction of operating liabilities classified as other.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of increase (decrease) in prepaid expenses, and assets classified as other.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInUnbilledReceivables">
<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 increase (decrease) during the reporting period of the amount of revenue for work performed for which billing has not occurred, net of uncollectible accounts.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<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;">us-gaap_IncreaseDecreaseInUnbilledReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3521-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 26<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3574-108585<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;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3521-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 26<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3574-108585<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;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3521-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3536-108585<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;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRepurchaseOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 cash outflow to reacquire common stock during the period.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3291-108585<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;">us-gaap_PaymentsForRepurchaseOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfDividendsCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3291-108585<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;">us-gaap_PaymentsOfDividendsCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3213-108585<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;">us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 cash outflow associated with the purchase of all investments (debt, security, other) during the period.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3213-108585<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;">us-gaap_PaymentsToAcquireInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3213-108585<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;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions">
<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>Amount of cash inflow from issuance of shares under share-based compensation arrangement. Issuance includes, but is not limited to, exercise of stock options and similar instruments.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3255-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=SL79508275-113901<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;">us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments">
<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 cash inflow associated with the sale, maturity and collection of all investments such as debt, security and so forth during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3179-108585<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;">us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockOptionPlanExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 noncash expense that accounts for the value of stock or unit options distributed to employees as compensation.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<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;">us-gaap_StockOptionPlanExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R8.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6771643232">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statement of Shareholders' Equity - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-in Capital</div></th>
<th class="th"><div>Retained Earnings</div></th>
<th class="th"><div>Accumulated Other Comprehensive Loss</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption', window );">Adjustment as a result of the adoption of ASU 2016-06 Income Taxes - Intra-Entity Transfers Other than Inventory (Note 12)</a></td>
<td class="num">$ (5,961)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (5,961)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Beginning Balance (in shares) at Dec. 31, 2017</a></td>
<td class="nump">173,507<span></span>
</td>
<td class="nump">173,507<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance at Dec. 31, 2017</a></td>
<td class="nump">$ 1,095,673<span></span>
</td>
<td class="nump">$ 347<span></span>
</td>
<td class="nump">$ 461,338<span></span>
</td>
<td class="nump">668,587<span></span>
</td>
<td class="num">$ (34,599)<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_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod', window );">Issuance of common stock under stock plans (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,434<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Issuance of common stock under stock plans</a></td>
<td class="nump">25,882<span></span>
</td>
<td class="nump">$ 3<span></span>
</td>
<td class="nump">25,879<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodShares', window );">Repurchase of common stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,750)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Repurchase of common stock</a></td>
<td class="num">(142,262)<span></span>
</td>
<td class="num">$ (5)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(142,257)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="nump">31,339<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">31,339<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DividendsCash', window );">Payment of dividends</a></td>
<td class="num">(23,283)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(23,283)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">173,849<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">173,849<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax', window );">Net unrealized gain (loss) on available-for-sale investments, net of tax of ($82)</a></td>
<td class="num">(180)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(180)<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_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax', window );">Reclassification of net realized (gain) loss on the sale of available-for-sale investments</a></td>
<td class="num">(535)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(535)<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_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="num">$ (5,078)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(5,078)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Ending Balance (in shares) at Sep. 30, 2018</a></td>
<td class="nump">172,032<span></span>
</td>
<td class="nump">172,191<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance at Sep. 30, 2018</a></td>
<td class="nump">$ 1,149,444<span></span>
</td>
<td class="nump">$ 345<span></span>
</td>
<td class="nump">$ 518,556<span></span>
</td>
<td class="nump">$ 670,935<span></span>
</td>
<td class="num">$ (40,392)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of increase to additional paid-in capital (APIC) from recognition of equity-based compensation.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=79507207&amp;loc=d3e4534-113899<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5047-113901<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=96864182&amp;loc=d3e11149-113907<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=96864182&amp;loc=d3e11178-113907<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;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption">
<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>Amount after tax of increase (decrease) to equity or (increase) decrease to net assets, resulting from the cumulative effect adjustment of a new accounting principle applied in the period of adoption.</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;">us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DividendsCash">
<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>Amount of paid and unpaid cash dividends declared for classes of stock, for example, but not limited to, common and preferred.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 405<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6957935&amp;loc=d3e64057-112817<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;">us-gaap_DividendsCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_IncreaseDecreaseInStockholdersEquityRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (b,c)<br> -URI http://asc.fasb.org/extlink&amp;oid=64808268&amp;loc=d3e32211-110900<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=SL7669646-108580<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;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after tax of reclassification adjustment from accumulated other comprehensive income for unrealized gain (loss) realized upon the sale of available-for-sale securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27357-111563<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e637-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e689-108580<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;">us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after tax, before reclassification adjustments, of unrealized holding gain (loss) on available-for-sale securities.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=SL7669646-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e637-108580<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;">us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Number of share instruments newly issued under a share-based compensation plan.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Value of stock issued as a result of the exercise of stock options.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84159872&amp;loc=d3e21463-112644<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<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;">us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84159872&amp;loc=d3e21463-112644<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;">us-gaap_StockRepurchasedDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84159872&amp;loc=d3e21463-112644<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_StockRepurchasedDuringPeriodValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=27010918&amp;loc=d3e74512-122707<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R9.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6757533024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statement of Shareholders' Equity (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_StatementOfStockholdersEquityAbstract', window );"><strong>Statement of Stockholders' Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax', window );">Tax effect of unrealized gain (loss) on available-for-sale investments</a></td>
<td class="nump">$ 24<span></span>
</td>
<td class="nump">$ 41<span></span>
</td>
<td class="num">$ (82)<span></span>
</td>
<td class="nump">$ 191<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of tax expense (benefit) before reclassification adjustments of unrealized holding gain (loss) on available-for-sale securities.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e640-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (e,f)<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=SL7669646-108580<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;">us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfStockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_StatementOfStockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R10.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6762515664">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Summary of Significant Accounting Policies</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Summary of Significant Accounting Policies</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As permitted by the rules of the Securities and Exchange Commission applicable to Quarterly Reports on Form                      10-Q, these notes are condensed and do not contain all disclosures required by generally accepted accounting principles (GAAP).  As a result of the adoption of ASC 606 "Revenue from Contracts with Customers," Cognex Corporation (the "Company") has provided disclosures related to revenue recognition in this Quarterly Report on Form 10-Q.  Reference should be made to the consolidated financial statements and related notes included in the Company&#8217;s Annual Report on Form 10-K for the year ended </font><font style="font-family:Arial;font-size:10pt;">December&#160;31, 2017</font><font style="font-family:Arial;font-size:10pt;"> for a full description of significant accounting policies.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">In the opinion of the management of the Company, the accompanying consolidated unaudited financial statements contain all adjustments, consisting of normal, recurring adjustments and financial statement reclassifications, necessary to present fairly the Company&#8217;s financial position as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, and the results of its operations for the three-month and nine-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">, and changes in shareholders&#8217; equity, comprehensive income, and cash flows for the periods presented.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The results disclosed in the Consolidated Statements of Operations for the three-month and nine-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> are not necessarily indicative of the results to be expected for the full year.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Revenue Recognition</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company recognizes revenue in accordance with Accounting Standards Codification (ASC) 606, &#8220;Revenue from Contracts with Customers.&#8221; The core principle of ASC 606 is to recognize revenue in a manner that depicts the transfer of promised goods or services to customers in an amount that reflects the consideration to which the Company expects to be entitled in exchange for those goods or services.  The framework in support of this core principle includes: (1) identifying the contract with the customer; (2) identifying the performance obligations in the contract; (3) determining the transaction price; (4) allocating the transaction price to the performance obligations; and (5) recognizing revenue when (or as) the performance obligations are satisfied.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Identifying the Contract with the Customer</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company identifies contracts with customers as agreements that create enforceable rights and obligations, which typically take the form of customer contracts or purchase orders.  </font></div><div style="line-height:120%;padding-top:8px;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Identifying the Performance Obligations in the Contract</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company identifies performance obligations as promises in contracts to transfer distinct goods or services. Standard products and services that the Company regularly sells separately are accounted for as distinct performance obligations.  Application-specific customer solutions that are comprised of a combination of products and services are accounted for as one performance obligation to deliver a total solution to the customer.  On-site support services that are provided to the customer after the solution is deployed are accounted for as a separate performance obligation.  These solutions are provided to customers in a variety of industries, including the consumer electronics, logistics, and automotive industries.   </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Shipping and handling activities for which the Company is responsible under the terms and conditions of the sale are not accounted for as performance obligations but as fulfillment costs.  These activities are required to fulfill the Company&#8217;s promise to transfer the goods and are expensed when revenue is recognized.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company does not assess whether promised goods or services are performance obligations if they are immaterial in the context of the contract.  If revenue is recognized before immaterial promises have been completed, then the costs related to such immaterial promises are accrued at the time of sale.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Determining the Transaction Price</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company determines the transaction price as the amount of consideration it expects to receive in exchange for transferring promised goods or services to the customer.  Amounts collected from customers for sales taxes are excluded from the transaction price. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">If a contract includes a variable amount, such as a rebate, then the Company estimates the transaction price using either the expected value or the most likely amount of consideration to be received, depending upon the specific facts and circumstances.  The Company includes estimated variable consideration in the transaction price only to the extent it is probable that a significant reversal of revenue will not occur when the uncertainty is resolved.  The Company updates its estimate of variable consideration at the end of each reporting period to reflect changes in facts and circumstances.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Allocating the Transaction Price to the Performance Obligations</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company allocates the transaction price to each performance obligation at contract inception based on a relative stand-alone selling price basis, or the price at which the Company would sell the good or service separately to similar customers in similar circumstances.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Recognizing Revenue When (or As) the Performance Obligations are Satisfied</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company recognizes revenue when it transfers the promised goods or services to the customer.  Revenue for standard products is recognized at the point in time when the customer obtains control of the goods, which is typically upon delivery when the customer has legal title, physical possession, the risks and rewards of ownership, and an enforceable obligation to pay for the products.  Revenue for services, which are not material, is typically recognized over the time the service is provided.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue for application-specific customer solutions is recognized at the point in time when the solution is validated, which is the point in time when the Company can objectively determine that the agreed-upon specifications in the contract have been met and the customer will accept the performance obligations in the arrangement.  Although the customer may have taken legal title and physical possession of the goods when they arrived at the customer&#8217;s designated site, the significant risks and rewards of ownership transfer to the customer only upon validation.  Revenue for on-site support services related to these solutions is recognized over the time the service is provided.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">In certain instances, an arrangement may include customer-specified acceptance provisions or performance guarantees that allow the customer to accept or reject delivered products that do not meet the customer&#8217;s specifications.  If the Company can objectively determine that control of a good or service has been transferred to the customer in accordance with the agreed-upon specifications in the contract, then customer acceptance is a formality.  If acceptance provisions are presumed to be substantive, then revenue is deferred until customer acceptance.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">For the Company&#8217;s standard products and services, revenue recognition and billing typically occur at the same time.  For application-specific customer solutions, however, the agreement with the customer may provide for billing terms which differ from revenue recognition criteria, resulting in either deferred revenue or unbilled revenue.  Credit assessments are performed to determine payment terms, which vary by region, industry, and customer.  Prepayment terms result in contract liabilities for customer deposits.  When credit is granted to customers, payment is typically due 30 to 90 days from billing.  The Company's contracts have an original expected duration of less than one year, and therefore as a practical expedient, the Company has elected to ignore the impact of the time value of money on a contract and to expense sales commissions.  The Company recognizes an asset for costs to fulfill a contract if the costs relate directly to the contract and to future performance, and the costs are expected to be recovered.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Management exercises judgment when determining the amount of revenue to be recognized each period.  Such judgments include, but are not limited to, assessing the customer&#8217;s ability and intention to pay substantially all of the contract consideration when due, determining when two or more contracts should be combined and accounted for as a single contract, determining whether a contract modification has occurred, assessing whether promises are immaterial in the context of the contract, determining whether material promises in a contract represent distinct performance obligations, estimating the transaction price for a contract that contains variable consideration, determining the stand-alone selling price of each performance obligation, determining whether control is transferred over time or at a point in time for performance obligations, and assessing whether formal customer acceptance provisions are substantive.</font></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 entire disclosure for all significant accounting policies of the reporting entity.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI http://asc.fasb.org/topic&amp;trid=2122369<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;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R11.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6705451392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>New Pronouncements<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Organization, Consolidation and Presentation of Financial Statements [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">New Pronouncements</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:12px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">New Pronouncements</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2016-02 and 2018-11, "Leases"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2016-02 creates Topic 842, Leases.  The objective of this ASU is to increase transparency and comparability among organizations by recognizing lease assets and lease liabilities on the balance sheet, and disclosing key information about leasing arrangements.  This ASU applies to any entity that enters into a lease, although lessees will see the most significant changes.  The main difference between current GAAP and Topic 842 is the recognition of lease assets and lease liabilities on the balance sheet for those leases classified as operating leases under current GAAP.  Topic 842 distinguishes between finance leases and operating leases, which are substantially similar to the classification criteria for distinguishing between capital leases and operating leases under current GAAP.  For public companies, the guidance in ASU 2016-02 is effective for annual periods beginning after December 15, 2018, and interim periods within those fiscal years.  In July 2018, the Financial Accounting Standards Board issued ASU 2018-11 to amend ASU 2016-02 and provided an additional (and optional) transition method to adopt the new lease standard.  This transition method allows entities to apply the new lease standard at the adoption date and recognize a cumulative-effect adjustment to the opening balance of retained earnings in the period of adoption instead of using the original modified retrospective transition method of adoption which required the restatement of all prior period financial statements.  Under this new transition method, the comparative periods presented in the financial statements will continue to be in accordance with current GAAP (Topic 840, Leases).  Management will adopt the new lease standard using this new transition method under ASU 2018-11.  As of the date of this report, management has determined the scope of leases subject to the new accounting requirements, has selected a software package to assist with compliance, and has reviewed all leases in scope.  Management is in the process of completing the implementation of the lease accounting software, training relevant employees, and finalizing the internal lease accounting policy and the related processes, internal controls, and disclosures. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2016-13, "Financial Instruments - Measurement of Credit Losses"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2016-13 applies to all reporting entities holding financial assets that are not accounted for at fair value through net income (debt securities).&#160; The amendments in this ASU eliminate the probable initial recognition threshold to recognize a credit loss under current GAAP and, instead, reflect an entity&#8217;s current estimate of all expected credit losses.  In addition, this ASU broadens the information an entity must consider in developing the credit loss estimate, including the use of reasonable and supportable forecasted information.&#160; The amendments in this ASU require that credit losses on available-for-sale debt securities be presented as an allowance rather than as a write-down and an entity will be able to record reversals of credit losses in current period net income.  For public companies, the guidance in ASU 2016-13 is effective for annual periods beginning after December 15, 2019, and interim periods within those fiscal years.&#160; This ASU should be applied through a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is effective.&#160; Management does not expect ASU 2016-13 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2017-08, "Receivables - Nonrefundable Fees and Other Costs - Premium Amortization on Purchased Callable Debt Securities"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2017-08 applies to all reporting entities that hold investments in callable debt securities that have an amortized cost basis in excess of the amount that is repayable by the issuer at the earliest call date (that is, at a premium). The amendments in this ASU shorten the amortization period for certain callable debt securities held at a premium. Specifically, the amendments require the premium to be amortized to the earliest call date.  The amendments do not require an accounting change for securities held at a discount; the discount continues to be amortized to maturity.   Under current GAAP, premiums and discounts on callable debt securities generally are amortized to the maturity date. If that callable debt security is subsequently called, the entity records a loss equal to the unamortized premium.  The amendments in this ASU more closely align the amortization period of premiums and discounts to expectations incorporated in market pricing on the underlying securities.  For public companies, the amendments in ASU 2017-08 are effective for annual periods beginning after December 15, 2019, and interim reporting periods within fiscal years beginning after December 15, 2020.  This ASU should be applied on a modified retrospective basis through a cumulative-effect adjustment directly to retained earnings as of the beginning of the period of adoption, and, in the period of adoption, the entity is required to provide disclosures about the change in accounting principle.  Early adoption is permitted, including adoption in an interim period.  Management does not expect ASU 2017-08 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2017-12, "Derivatives and Hedging - Targeted Improvements to Accounting for Hedging Activities"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2017-12 applies to all reporting entities that elect to apply hedge accounting.  The hedge accounting requirements under current GAAP sometimes do not permit an entity to properly recognize the economic results of the hedging strategy in the financial statements, and they are difficult to understand and interpret.  The amendments in this ASU make certain targeted improvements to simplify the application of the hedge accounting guidance.  Also, they better align the risk management activities and financial reporting for hedging relationships through changes to both 1) the designation and measurement guidance for qualifying hedging relationships and 2) the presentation of hedge results.  For public companies, the amendments in ASU 2017-12 are effective for annual reporting periods beginning after December 15, 2018, and interim reporting periods within those fiscal years.  Early adoption is permitted including adoption in any interim period after issuance of the ASU.  All transition requirements and elections should be applied to hedging relationships existing on the date of adoption.  The entity should apply a cumulative-effect adjustment related to eliminating the separate measurement of ineffectiveness to accumulated other comprehensive income with a corresponding adjustment to the opening balance of retained earnings as of the beginning of the fiscal year that an entity adopts the amendments in this ASU.  The amended presentation and disclosure guidance is required only prospectively.  Management does not expect ASU 2017-12 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2018-01, "Land Easement Practical Expedient for Transition to Topic 842"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2018-01 applies to entities with land easements that exist or expired before an entity&#8217;s adoption of Topic 842, provided that the entity does not account for those land easements as leases under Topic 840.  The amendments in this ASU permit an entity to elect an optional transition practical expedient to not evaluate under Topic 842 land easements that exist or expired before the entity&#8217;s adoption of Topic 842 and that were not previously accounted for as leases under Topic 840.  An entity that elects this practical expedient should apply the practical expedient consistently to all of its existing or expired land easements that were not previously accounted for as leases under Topic 840.  Once an entity adopts Topic 842, it should apply that Topic prospectively to all new (or modified) land easements to determine whether the arrangement should be accounted for as a lease.  An entity that does not elect this practical expedient should evaluate all existing or expired land easements in connection with the adoption of the new lease requirements in Topic 842 to assess whether they meet the definition of a lease.  The amendments in this ASU affect the amendments in ASU 2016-02, which are not yet effective but may be early adopted.  The effective date and transition requirements for the amendments are the same as the effective date and transition requirements in ASU 2016-02, which is for annual periods beginning after December 15, 2018, and interim periods within those fiscal years. Management does not expect ASU 2018-01 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2018-02, "Income Statement - Reporting Comprehensive Income"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2018-02 applies to entities required to apply the provisions of Topic 220, Income Statement - Reporting Comprehensive Income, and has items of other comprehensive income for which the related tax effects are presented in other comprehensive income as required by GAAP.  The amendments in this ASU allow a reclassification from accumulated other comprehensive income to retained earnings for stranded tax effects resulting from the Tax Cuts and Jobs Act of 2017 (the "Tax Act").  Consequently, the amendments eliminate the stranded tax effects resulting from the Tax Act and will improve the usefulness of information reported to financial statement users.  However, because the amendments only relate to the reclassification of the income tax effects of the Tax Act, the underlying guidance that requires the effect of a change in tax laws or rates to be included in income from continuing operations is not affected.  The amendments in this ASU also require certain disclosures about stranded tax effects.  The amendments in this ASU are effective for all entities for fiscal years beginning after December 15, 2018, and interim periods within those fiscal years.  Early adoption of the amendments in this ASU is permitted, including adoption in any interim period.  The amendments in this ASU should be applied either in the period of adoption or retrospectively to each period (or periods) in which the effect of the change in the U.S. federal corporate income tax rate in the Tax Act is recognized.  Management does not expect ASU 2018-02 to have a material impact on the Company's financial statements and disclosures. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2018-07, "Compensation - Stock Compensation - Improvements to Nonemployee Share-Based Payment Accounting"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2018-07 applies to all entities that enter into share-based payment transactions for acquiring goods and services from nonemployees.  The amendments in this ASU expand the scope of Topic 718, Compensation - Stock Compensation, to include share-based payments transactions to nonemployees.  Changes to the accounting for nonemployee awards as a result of this ASU include: 1) equity-classified nonemployee share-based payment awards are measured at the grant date, instead of the previous requirement to remeasure the awards through the performance completion date, 2) for awards with performance conditions, compensation cost is recognized when the achievement of the performance condition is probable, rather than upon achievement, and 3) the current requirement to reassess the classification (equity or liability) for nonemployee awards upon vesting is eliminated.  This ASU clarifies that Topic 718 does not apply to financing transactions or awards granted to customers as part of a contract accounted for under Topic 606, Revenue from Contracts with Customers.  The amendments in this ASU are effective for public business entities for fiscal years beginning after December 15, 2018, and interim periods within those fiscal years.  An entity should only remeasure liability-classified awards that have not been settled by the date of adoption and equity-classified awards for which the measurement date has not been established through a cumulative-effect adjustment to retained earnings as of the beginning of the fiscal year of adoption.  Management does not expect ASU 2018-07 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2018-15, "Intangibles - Goodwill and Other - Internal-Use Software"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2018-15 applies to entities that are a customer in a hosting arrangement that is a service contract.  The amendments  in this ASU align the requirements for capitalizing implementation costs incurred in a hosting arrangement that is a service contract with the requirements for capitalizing implementation costs incurred to develop or obtain internal-use software.  Accordingly, the amendments in this ASU require an entity in a hosting arrangement that is a service contract to follow the guidance in Subtopic 350-40 to determine which implementation costs to capitalize as an asset related to the service contract and which costs to expense. Further, it requires the entity to expense the capitalized implementation costs over the term of the hosting arrangement.  In addition, it requires the presentation of the expenses related to the capitalized implementation costs in the same line item in the statement of income as the fees associated with the hosting element of the arrangement and the classification of the payments for the capitalized implementation costs in the statement of cash flows in the same manner as the payments made for the fees associated with the hosting element.  The amendments in this ASU are effective for public entities for fiscal years beginning after December 15, 2019, and interim periods within those fiscal years, with early adoption permitted.  Management does not expect ASU 2018-15 to have a material impact on the Company's financial statement and disclosures.</font></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 entire disclosure of changes in accounting principles, including adoption of new accounting pronouncements, that describes the new methods, amount and effects on financial statement line items.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -URI http://asc.fasb.org/topic&amp;trid=2122394<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;">us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R12.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6762475968">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresTextBlock', window );">Fair Value Measurements</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Fair Value Measurements</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Financial Assets and Liabilities that are Measured at Fair Value on a Recurring Basis</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the financial assets and liabilities required to be measured at fair value on a recurring basis as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12" rowspan="1"></td></tr><tr><td style="width:50%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Quoted&#160;Prices&#160;in</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Active Markets</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">for Identical</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Assets (Level 1)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Significant&#160;    Other</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Observable</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Inputs (Level 2)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;"><br clear="none"/>Unobservable<br clear="none"/>Inputs                                                                                                                                                                             (Level 3)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Assets:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Money market instruments</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,717</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">314,106</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">226,058</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">131,549</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">14,437</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,909</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,886</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Economic hedge forward contracts</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">21</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Liabilities:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Economic hedge forward contracts</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">91</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Contingent consideration liabilities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,507</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s money market instruments are reported at fair value based upon the daily market price for identical assets in active markets, and are therefore classified as Level 1. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s debt securities and forward contracts are reported at fair value based upon model-driven valuations in which all significant inputs are observable or can be derived from or corroborated by observable market data for substantially the full term of the asset or liability, and are therefore classified as Level 2.  Management is responsible for estimating the fair value of these financial assets and liabilities, and in doing so, considers valuations provided by a large, third-party pricing service.  For debt securities, this service maintains regular contact with market makers, brokers, dealers, and analysts to gather information on market movement, direction, trends, and other specific data.  They use this information to structure yield curves for various types of debt securities and arrive at the daily valuations.  The Company's forward contracts are typically traded or executed in over-the-counter markets with a high degree of pricing transparency.  The market participants are generally large commercial banks.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company did not record an other-than-temporary impairment of these financial assets during the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company's contingent consideration liabilities are reported at fair value based upon probability-adjusted present values of the consideration expected to be paid using significant inputs that are not observable in the market and are therefore classified as Level 3.  Key assumptions used in these estimates include probability assessments with respect to the likelihood of achieving certain revenue milestones.  The fair values of these contingent consideration liabilities were calculated using discount rates consistent with the level of risk of achievement, and are remeasured each reporting period with changes in fair value recorded in "Other income (expense)" on the Consolidated Statements of Operations.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the activity for the Company's liability measured at fair value using Level 3 inputs for the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> (in thousands):</font></div><div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4" rowspan="1"></td></tr><tr><td style="width:85%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,557</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Fair value adjustment to Manatee contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1,350</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Fair value adjustment to GVi contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,130</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Fair value adjustment to Chiaro contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">170</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Payment of GVi contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1,000</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,507</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Non-financial Assets that are Measured at Fair Value on a Non-recurring Basis</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Non-financial assets such as property, plant and equipment, goodwill, and intangible assets are required to be measured at fair value only when an impairment loss is recognized.  The Company did not record an impairment charge related to these assets during the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> and October 1, 2017.</font></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -URI http://asc.fasb.org/topic&amp;trid=2155941<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;">us-gaap_FairValueDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R13.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6929072912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_CashAndCashEquivalentsAbstract', window );"><strong>Cash and Cash Equivalents [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock', window );">Cash, Cash Equivalents, and Investments</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Cash, Cash Equivalents, and Investments</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash, cash equivalents, and investments consisted of the following (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8" rowspan="1"></td></tr><tr><td style="width:63%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:16%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:16%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">104,654</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">97,951</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Money market instruments</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,717</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,631</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash and cash equivalents</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">107,371</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">106,582</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">193,347</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">150,371</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">138,099</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">47,395</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">71,438</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">59,203</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">8,119</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">21,579</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,044</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,805</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10,608</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Short-term investments</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">420,016</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">297,961</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">176,007</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">296,014</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">60,111</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">71,727</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">32,711</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">23,459</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,318</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,147</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,940</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">14,890</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">842</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,204</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Long-term investments</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">281,929</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">423,441</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">809,316</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">827,984</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills consist of debt securities issued by the U.S. government; corporate bonds consist of debt securities issued by both domestic and foreign companies; asset-backed securities consist of debt securities collateralized by pools of receivables or loans with credit enhancement; sovereign bonds consist of direct debt issued by foreign governments; municipal bonds consist of debt securities issued by state and local government entities; and agency bonds consist of domestic or foreign obligations of government agencies and government sponsored enterprises that have government backing. All securities are denominated in U.S. Dollars.</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the Company&#8217;s available-for-sale investments as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"><tr><td colspan="16" rowspan="1"></td></tr><tr><td style="width:44%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Amortized<br clear="none"/>Cost</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Gross<br clear="none"/>Unrealized<br clear="none"/>Gains</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Gross<br clear="none"/>Unrealized<br clear="none"/>Losses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Fair&#160;Value</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Short-term:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">193,631</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(284</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">193,347</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">138,383</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">56</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(340</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">138,099</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">71,646</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(209</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">71,438</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,172</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(53</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,119</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,050</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(6</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,044</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Long-term:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">175,881</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">469</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(343</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">176,007</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">60,276</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">33</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(198</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">60,111</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32,718</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">7</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(14</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32,711</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,286</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,318</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,930</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,940</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">855</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(13</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">842</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">702,797</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">608</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,460</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">701,945</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the Company&#8217;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"><tr><td colspan="24" rowspan="1"></td></tr><tr><td style="width:29%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="15" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Unrealized Loss Position For:</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Less than 12 Months</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">12 Months or Greater</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Fair&#160;Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Unrealized</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Losses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Fair&#160;Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Unrealized</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Losses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Fair&#160;Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Unrealized</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Losses</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">137,108</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(174</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">63,030</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(124</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">200,138</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(298</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">116,028</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(386</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">42,922</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(297</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">158,950</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(683</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">57,678</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(207</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">38,256</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(200</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">95,934</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(407</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,527</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(6</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,592</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(47</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,119</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(53</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,854</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(6</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">842</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(13</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,696</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(19</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">317,195</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(779</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">149,642</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(681</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">466,837</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,460</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, the Company did not recognize any other-than-temporary impairment of these investments.  In its evaluation, management considered the type of security, the credit rating of the security, the length of time the security has been in a loss position, the size of the loss position, the Company's intent and ability to hold the security to expected recovery of value, and other meaningful information.  The Company does not intend to sell, and is unlikely to be required to sell, any of these available-for-sale investments before their effective maturity or market price recovery.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company recorded gross realized gains and gross realized losses on the sale of debt securities totaling </font><font style="font-family:Arial;font-size:10pt;">$283,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$17,000</font><font style="font-family:Arial;font-size:10pt;">, respectively, during the three-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$306,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$43,000</font><font style="font-family:Arial;font-size:10pt;">, respectively, during the three-month period ended </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">.  The Company recorded gross realized gains and gross realized losses on the sale of debt securities totaling </font><font style="font-family:Arial;font-size:10pt;">$646,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$111,000</font><font style="font-family:Arial;font-size:10pt;">, respectively, during the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$449,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$79,000</font><font style="font-family:Arial;font-size:10pt;">, respectively, during the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">.  These gains and losses are included in "Investment income" on the Consolidated Statement of Operations.  Prior to the sale of these securities, unrealized gains and losses for these debt securities, net of tax, are recorded in shareholders&#8217; equity as accumulated other comprehensive income (loss).</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table presents the effective maturity dates of the Company&#8217;s available-for-sale investments as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.22027290448344%;border-collapse:collapse;text-align:left;"><tr><td colspan="28" rowspan="1"></td></tr><tr><td style="width:24%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">&lt;1 year</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">1-2 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">2-3 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">3-4 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">4-5 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">5-7 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">138,099</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">80,605</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">68,684</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">22,429</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,434</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,855</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">314,106</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">193,347</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32,711</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">226,058</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">71,438</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">30,840</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,431</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">12,102</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,138</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,600</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">131,549</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,119</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,318</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">14,437</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,940</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,909</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,044</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">842</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,886</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">420,016</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">151,316</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">74,115</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">40,471</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,572</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">9,455</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">701,945</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock">
<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 entire disclosure for cash, cash equivalents, investments in debt and equity instruments (including cost and equity investees and related income statement amounts), equity and cost method investments, investments in joint ventures and any other investment.</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;">us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R14.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6911367488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventories</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Inventories</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Inventories consisted of the following (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8" rowspan="1"></td></tr><tr><td style="width:63%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:16%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:16%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Raw materials</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">46,660</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">33,927</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Work-in-process</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,071</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,114</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Finished goods</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">43,304</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">31,882</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">94,035</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">67,923</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI http://asc.fasb.org/topic&amp;trid=2126998<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;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R15.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6929072912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsDisclosureTextBlock', window );">Intangible Assets</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:12px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Intangible Assets</font></div><div style="line-height:120%;padding-top:6px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Amortized intangible assets consisted of the following (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12" rowspan="1"></td></tr><tr><td style="width:53%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Gross</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Carrying</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Accumulated</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Amortization</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Net</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Carrying</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Distribution networks</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">38,060</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">38,060</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Completed technologies</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">13,687</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,010</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">7,677</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Customer relationships</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">8,607</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,587</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">3,020</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Non-compete agreements</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">370</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">185</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">185</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">60,724</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">49,842</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">10,882</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:inherit;font-size:8pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Gross</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Carrying</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Accumulated</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Amortization</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Net</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Carrying</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Distribution networks</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">38,060</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">38,060</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Completed technologies</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,687</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,181</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,506</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Customer relationships</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,607</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,202</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,405</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Non-compete agreements</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">370</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">92</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">278</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">60,724</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">47,535</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,189</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As of September 30, 2018, estimated future amortization expense related to intangible assets is as follows (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="5" rowspan="1"></td></tr><tr><td style="width:82%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:15%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;font-weight:bold;text-decoration:underline;">Year Ended December&#160;31,</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;font-weight:bold;">Amount</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Remainder of fiscal 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">769</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2019</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,701</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2020</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,185</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2021</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,017</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2022</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,691</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2023</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">989</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Thereafter</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">530</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">10,882</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 entire disclosure for all or part of the information related to intangible assets.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -URI http://asc.fasb.org/topic&amp;trid=2144416<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;">us-gaap_IntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R16.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6705451936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty Obligations<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_ProductWarrantiesDisclosuresAbstract', window );"><strong>Product Warranties Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyDisclosureTextBlock', window );">Warranty Obligations</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Warranty Obligations</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company records the estimated cost of fulfilling product warranties at the time of sale based upon historical costs to fulfill claims.  Obligations may also be recorded subsequent to the time of sale whenever specific events or circumstances impacting product quality become known that would not have been taken into account using historical data.  While we engage in extensive product quality programs and processes, including actively monitoring and evaluating the quality of our component suppliers and third-party contract manufacturers, the Company&#8217;s warranty obligation is affected by product failure rates, material usage, and service delivery costs incurred in correcting a product failure.  An adverse change in any of these factors may result in the need for additional warranty provisions. Warranty obligations are included in &#8220;Accrued expenses&#8221; on the Consolidated Balance Sheets.</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The changes in the warranty obligation were as follows (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4" rowspan="1"></td></tr><tr><td style="width:82%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:16%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,701</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Provisions for warranties issued during the period</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,376</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Fulfillment of warranty obligations</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(3,223</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign exchange rate changes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(117</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,737</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantiesDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_ProductWarrantiesDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 entire disclosure for standard and extended product warranties and other product guarantee contracts, including a tabular reconciliation of the changes in the guarantor's aggregate product warranty liability for the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -URI http://asc.fasb.org/topic&amp;trid=2155896<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;">us-gaap_ProductWarrantyDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R17.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6655337888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Instruments<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock', window );">Derivative Instruments</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Derivative Instruments</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s foreign currency risk management strategy is principally designed to mitigate the potential financial impact of changes in the value of transactions and balances denominated in foreign currencies resulting from changes in foreign currency exchange rates.  Currently, the Company enters into </font><font style="font-family:Arial;font-size:10pt;">two</font><font style="font-family:Arial;font-size:10pt;"> types of hedges to manage this risk.  The first are economic hedges which utilize foreign currency forward contracts with maturities of up to </font><font style="font-family:Arial;font-size:10pt;">45</font><font style="font-family:Arial;font-size:10pt;"> days to manage the exposure to fluctuations in foreign currency exchange rates arising primarily from foreign-denominated receivables and payables.  The gains and losses on these derivatives are intended to be offset by the changes in the fair value of the assets and liabilities being hedged.  These economic hedges are not designated as hedging instruments for hedge accounting treatment.  The second are cash flow hedges which utilize foreign currency forward contracts with maturities of up to </font><font style="font-family:Arial;font-size:10pt;">18 months</font><font style="font-family:Arial;font-size:10pt;"> to hedge specific forecasted transactions of the Company's foreign subsidiaries with the goal of protecting the Company's budgeted revenues and expenses against foreign currency exchange rate changes compared to its budgeted rates.  These cash flow hedges are designated as hedging instruments for hedge accounting treatment. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company had the following outstanding forward contracts (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="14" rowspan="1"></td></tr><tr><td style="width:47%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:10%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Currency</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Notional<br clear="none"/>Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">USD<br clear="none"/>Equivalent</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Notional<br clear="none"/>Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">USD<br clear="none"/>Equivalent</font></div></td></tr><tr><td colspan="7" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Derivatives Not Designated as Hedging Instruments:</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Euro</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">19,500</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">22,602</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Japanese Yen</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">455,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">455,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,049</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">British Pound</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,100</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,742</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,650</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,232</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Hungarian Forint</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">700,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,513</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">545,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,110</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Korean Won</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,050,000</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,847</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,825,000</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,708</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Taiwanese Dollar</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">49,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,615</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">37,725</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,278</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Canadian Dollar</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">800</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">616</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Singapore Dollar</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">760</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">557</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Swiss Franc</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,365</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,401</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Information regarding the fair value of the outstanding forward contracts was as follows (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="20" rowspan="1"></td></tr><tr><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:17%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:10%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Asset Derivatives</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Liability Derivatives</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Balance</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Fair Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Balance</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Fair Value</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Sheet<br clear="none"/>Location</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December 31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Sheet<br clear="none"/>Location</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December 31, 2017</font></div></td></tr><tr><td colspan="10" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Derivatives Not Designated as Hedging Instruments:<br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Economic hedge forward contracts</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Prepaid&#160;expenses&#160;and other current assets</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">16</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accrued expenses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">91</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table presents the gross activity for all derivative assets and liabilities which were presented on a net basis on the Consolidated Balance Sheets due to the right of offset with each counterparty (in thousands):</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"><tr><td colspan="19" rowspan="1"></td></tr><tr><td style="width:18%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:19%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Asset Derivatives</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Liability Derivatives</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September&#160;30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December&#160;31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September&#160;30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December&#160;31, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross amounts of recognized assets</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">16</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross amounts of recognized liabilities</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">91</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross amounts offset</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross amounts offset</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net amount of assets presented</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">16</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net amount of liabilities presented</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">91</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Information regarding the effect of derivative instruments on the consolidated financial statements was as follows (in thousands):</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="18" rowspan="1"></td></tr><tr><td style="width:22%;" rowspan="1" colspan="1"></td><td style="width:21%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:10%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Location in Financial Statements</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td colspan="11" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Derivatives Designated as Hedging Instruments:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gains (losses) recorded in shareholders' equity (effective portion)</font></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accumulated other comprehensive income (loss), net of tax</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations (effective portion)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">56</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Research, development, and engineering expenses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Selling, general, and administrative expenses</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Total gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">56</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gains (losses) recognized in current operations (ineffective portion and discontinued derivatives)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign currency gain (loss)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td colspan="11" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Derivatives Not Designated as Hedging Instruments:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gains (losses) recognized in current operations</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign currency gain (loss)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">299</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">43</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(366</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">139</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -URI http://asc.fasb.org/topic&amp;trid=2229140<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;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R18.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6705451936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Revenue Recognition</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">On January 1, 2018, the Company adopted Accounting Standards Codification (ASC) 606, "Revenue from Contracts with Customers," using the full retrospective method to present all periods reported on a consistent basis.  Accordingly, prior-period results have been restated to apply the provisions of this ASC.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As a result of this adoption, revenue for software-only products sold as part of multiple-deliverable arrangements are no longer deferred when vendor-specific objective evidence of fair value does not exist for the undelivered elements of the arrangement. This change results in earlier recognition of revenue.  In addition, certain of the Company&#8217;s product accessory sales, which were reported on a net basis, are now reported on a gross basis as a result of applying the expanded guidance in the new standard related to principal versus agent considerations.  This change results in the Company reporting higher revenue and higher cost of revenue when these sales are reported on a gross basis, although the gross margin dollars do not change.  Furthermore, for arrangements that include customer-specified acceptance criteria, revenue is recognized when the Company can objectively determine that control has been transferred to the customer in accordance with the agreed-upon specifications in the contract, which may occur before formal customer acceptance.  This change primarily impacts revenue recognition for arrangements in the logistics industry where certain customer solutions include installed products and results in earlier recognition of revenue.</font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The adoption of the standard impacted our previously-reported results as follows (in thousands):</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="24" rowspan="1"></td></tr><tr><td style="width:30%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:10%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:10%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Statement of Operations</font></div><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As previously reported</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Adjustment</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As restated</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As previously reported</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Adjustment</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As restated</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">259,739</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,303</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">266,042</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">567,585</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">15,576</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">583,161</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cost of revenue</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">62,360</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,701</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">68,061</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">128,056</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">14,701</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">142,757</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross margin</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">197,379</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">602</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">197,981</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">439,529</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">875</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">440,404</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Operating income</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">110,247</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">602</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">110,849</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">207,211</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">875</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">208,086</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income before income tax expense</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">112,150</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">602</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">112,752</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">212,918</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">875</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">213,793</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income tax expense (benefit)</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,802</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">457</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10,259</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,843</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">491</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,334</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net income</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">102,348</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">145</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">102,493</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">204,075</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">384</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">204,459</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td colspan="24" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net income per weighted-average common and common-equivalent share:</font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Basic</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.59</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.59</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.18</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.18</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Diluted</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.57</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.57</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.14</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.14</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.609375%;border-collapse:collapse;text-align:left;"><tr><td colspan="12" rowspan="1"></td></tr><tr><td style="width:58%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Balance Sheet</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As previously reported</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Adjustment</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As restated</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Prepaid expenses and other current assets</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">30,800</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(117</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">30,683</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accrued income taxes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">11,391</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">112</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">11,503</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Deferred revenue and customer deposits</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(549</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,420</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Retained earnings</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">668,267</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">320</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">668,587</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands):</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17" rowspan="1"></td></tr><tr><td style="width:38%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Europe</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">115,592</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">146,230</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">242,161</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">252,386</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Americas</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">58,830</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">54,902</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">189,859</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">155,977</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Greater China</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">32,796</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">35,546</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">101,130</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">84,764</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other Asia</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">25,003</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">29,364</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">79,902</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">90,034</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">232,221</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">266,042</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">613,052</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">583,161</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes disaggregated revenue information by revenue type (in thousands):</font></div><div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17" rowspan="1"></td></tr><tr><td style="width:38%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Standard products and services</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">150,993</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">159,981</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">493,019</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">453,464</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Application-specific customer solutions</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">81,228</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">106,061</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">120,033</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">129,697</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">232,221</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">266,042</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">613,052</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">583,161</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Costs to Fulfill a Contract</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Costs to fulfill a contract are included in "Prepaid expenses and other current assets" on the Consolidated Balance Sheet and amounted to </font><font style="font-family:Arial;font-size:10pt;">$6,811,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$3,230,000</font><font style="font-family:Arial;font-size:10pt;"> as of September 30, 2018 and December 31, 2017, respectively.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounts Receivable, Contract Assets, and Contract Liabilities</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accounts receivable represent amounts billed and currently due from customers which are reported at their net estimated realizable value.  The Company maintains reserves against its accounts receivable for potential credit losses.  Credit losses recognized on accounts receivable were immaterial for the three-month and nine-month periods ended  September 30, 2018 and October 1, 2017, respectively.  Contract assets consist of unbilled revenue which arises when revenue is recognized in advance of billing for certain application-specific customer solutions contracts.  Contract liabilities consist of deferred revenue and customer deposits which arise when amounts are billed to or collected from customers in advance of revenue recognition.</font></div><div style="line-height:120%;padding-top:4px;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the deferred revenue and customer deposits activity for the nine-month period ended September 30, 2018 (in thousands):</font></div><div style="line-height:120%;padding-top:4px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.609375%;border-collapse:collapse;text-align:left;"><tr><td colspan="4" rowspan="1"></td></tr><tr><td style="width:80%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:18%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Amount</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,420</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Increases to deferred revenue and customer deposits</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">55,408</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Recognition of revenue</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(50,590</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign exchange rate changes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(986</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">13,252</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:4px;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As a practical expedient, the Company has elected not to disclose the aggregate amount of the transaction price allocated to unsatisfied performance obligations, as our contracts have an original expected duration of less than one year.</font></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI http://asc.fasb.org/topic&amp;trid=2122369<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI http://asc.fasb.org/topic&amp;trid=49130388<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;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R19.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6655334672">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Disclosure of Compensation Related Costs, Share-based Payments [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_us-gaap_CompensationRelatedCostsGeneralTextBlock', window );">Stock-Based Compensation Expense</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Stock-Based Compensation Expense</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s share-based payments that result in compensation expense consist of stock option grants and restricted stock awards.  As of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, the Company had </font><font style="font-family:Arial;font-size:10pt;">20,246,002</font><font style="font-family:Arial;font-size:10pt;"> shares available for grant.  Stock options are granted with an exercise price equal to the market value of the Company&#8217;s common stock at the grant date and generally vest over </font><font style="font-family:Arial;font-size:10pt;">four</font><font style="font-family:Arial;font-size:10pt;"> or five years based upon continuous service and expire </font><font style="font-family:Arial;font-size:10pt;">ten</font><font style="font-family:Arial;font-size:10pt;"> years from the grant date.  Vesting of restricted stock awards may be based on continuing employment and/or achievement of pre-established performance goals and objectives.  Vesting for performance-based restricted stock awards and time-based restricted stock awards must not be less than </font><font style="font-family:Arial;font-size:10pt;">one</font><font style="font-family:Arial;font-size:10pt;"> year and </font><font style="font-family:Arial;font-size:10pt;">three</font><font style="font-family:Arial;font-size:10pt;"> years, respectively; however, awards with time-based vesting may become vested incrementally over such three-year period.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the Company&#8217;s stock option activity for the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">:</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13" rowspan="1"></td></tr><tr><td style="width:39%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:15%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Shares</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(in&#160;thousands)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Weighted-</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Average</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Exercise</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Price</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Weighted-</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Average</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Remaining</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Contractual</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Term&#160;(in&#160;years)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Aggregate</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Intrinsic</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(in&#160;thousands)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Outstanding as of December 31, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">12,726</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">25.24</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Granted</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,318</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">55.66</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Exercised</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1,434</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">18.06</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Forfeited or expired</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(429</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">33.24</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Outstanding as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">13,181</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">31.11</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">7.48</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">329,301</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Exercisable as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,327</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">20.14</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6.01</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">154,377</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Options vested or expected to vest as of September 30, 2018 (1)</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">11,916</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">29.99</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">7.37</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">310,772</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-align:justify;padding-left:48px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;(1) In addition to the vested options, the Company expects a portion of the unvested options to vest at some point in the future.  Options expected to vest are calculated by applying an estimated forfeiture rate to the unvested options.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The fair values of stock options granted in each period presented were estimated using the following weighted-average assumptions:</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12" rowspan="1"></td></tr><tr><td style="width:39%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months&#160;Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Risk-free rate</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2.9</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2.4</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2.9</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2.4</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Expected dividend yield</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">0.32</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.39</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">0.32</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.39</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Expected volatility</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">39</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">41</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">39</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">41</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Expected term (in years)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5.4</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5.1</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5.3</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5.3</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Risk-free rate</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The risk-free rate was based upon a treasury instrument whose term was consistent with the contractual term of the option.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Expected dividend yield</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Generally, the current dividend yield is calculated by annualizing the cash dividend declared by the Company&#8217;s Board of Directors and dividing that result by the closing stock price on the grant date.&#160;</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Expected volatility</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The expected volatility was based upon a combination of historical volatility of&#160;the Company&#8217;s common stock over the contractual term of the option and implied volatility for traded options of the Company&#8217;s stock.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Expected term</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The expected term was derived from the binomial lattice model from the impact of events that trigger exercises over time.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company stratifies its employee population into </font><font style="font-family:Arial;font-size:10pt;">two</font><font style="font-family:Arial;font-size:10pt;"> groups: one consisting of senior management and another consisting of all other employees.  The Company currently applies an estimated annual forfeiture rate of </font><font style="font-family:Arial;font-size:10pt;">8%</font><font style="font-family:Arial;font-size:10pt;"> to all unvested options for senior management and a rate of </font><font style="font-family:Arial;font-size:10pt;">12%</font><font style="font-family:Arial;font-size:10pt;"> for all other employees.  Each year during the first quarter, the company revises its estimated forfeiture rate.  This resulted in an increase to compensation expense of </font><font style="font-family:Arial;font-size:10pt;">$1,283,000</font><font style="font-family:Arial;font-size:10pt;"> in 2018 and a decrease to compensation expense of </font><font style="font-family:Arial;font-size:10pt;">$673,000</font><font style="font-family:Arial;font-size:10pt;"> in 2017.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The weighted-average grant-date fair values of stock options granted during the three-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;"> were </font><font style="font-family:Arial;font-size:10pt;">$22.52</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$14.80</font><font style="font-family:Arial;font-size:10pt;">, respectively.  The weighted-average grant-date fair values of stock options granted during the nine-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;"> were </font><font style="font-family:Arial;font-size:10pt;">$21.70</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$14.97</font><font style="font-family:Arial;font-size:10pt;">, respectively. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The total intrinsic values of stock options exercised for the three-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;"> were </font><font style="font-family:Arial;font-size:10pt;">$17,985,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$28,462,000</font><font style="font-family:Arial;font-size:10pt;">, respectively.  The total intrinsic values of stock options exercised for the nine-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;"> were </font><font style="font-family:Arial;font-size:10pt;">$50,975,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$100,913,000</font><font style="font-family:Arial;font-size:10pt;">, respectively.  The total fair values of stock options vested for the three-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;"> were </font><font style="font-family:Arial;font-size:10pt;">$997,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$844,000</font><font style="font-family:Arial;font-size:10pt;">, respectively.  The total fair values of stock options vested for the nine-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;"> were </font><font style="font-family:Arial;font-size:10pt;">$27,557,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$19,557,000</font><font style="font-family:Arial;font-size:10pt;">, respectively.   </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, total unrecognized compensation expense related to non-vested stock options was </font><font style="font-family:Arial;font-size:10pt;">$50,387,000</font><font style="font-family:Arial;font-size:10pt;">, which is expected to be recognized over a weighted-average period of </font><font style="font-family:Arial;font-size:10pt;">1.61</font><font style="font-family:Arial;font-size:10pt;"> years.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the Company's restricted stock activity for the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">: </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="11" rowspan="1"></td></tr><tr><td style="width:48%;" rowspan="1" colspan="1"></td><td style="width:15%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:16%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Shares                   (in thousands)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Weighted-Average     Grant Fair Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Aggregate Intrinsic Value                  (in thousands)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Nonvested as of December 31, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">20</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">17.03</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Granted</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Vested</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(20</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">17.03</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">993</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Forfeited or expired</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Nonvested as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The fair values of restricted stock awards granted were determined based upon the market value of the Company's common stock at the time of grant.  The initial cost was then amortized over the period of vesting until the restrictions lapsed.  These restricted shares became fully vested in 2018.  Participants were entitled to dividends on the restricted stock awards, but only received those amounts if the shares vested.  The sale or transfer of these shares was restricted during the vesting period.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> were </font><font style="font-family:Arial;font-size:10pt;">$9,143,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$1,654,000</font><font style="font-family:Arial;font-size:10pt;">, respectively, and for the three-month period ended </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;"> were </font><font style="font-family:Arial;font-size:10pt;">$8,026,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$2,639,000</font><font style="font-family:Arial;font-size:10pt;">, respectively.  The total stock-based compensation expense and the related income tax benefit recognized for the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> were </font><font style="font-family:Arial;font-size:10pt;">$31,339,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$5,608,000</font><font style="font-family:Arial;font-size:10pt;">, respectively, and for the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;"> were </font><font style="font-family:Arial;font-size:10pt;">$23,355,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">$7,661,000</font><font style="font-family:Arial;font-size:10pt;">, respectively.  </font><font style="font-family:Arial;font-size:10pt;">No</font><font style="font-family:Arial;font-size:10pt;"> compensation expense was capitalized as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> or </font><font style="font-family:Arial;font-size:10pt;">December&#160;31, 2017</font><font style="font-family:Arial;font-size:10pt;">.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table presents the stock-based compensation expense by caption for each period presented on the Consolidated Statements of Operations (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16" rowspan="1"></td></tr><tr><td style="width:38%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cost of revenue</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">544</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">520</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,898</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,404</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Research, development, and engineering</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">3,197</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,765</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">11,166</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,090</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Selling, general, and administrative</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,402</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,741</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">18,275</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,861</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">9,143</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,026</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">31,339</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">23,355</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CompensationRelatedCostsGeneralTextBlock">
<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 entire disclosure for compensation costs, including compensated absences accruals, compensated absences liability, deferred compensation arrangements and income statement compensation items.  Deferred compensation arrangements may include a description of an arrangement with an individual employee, which is generally an employment contract between the entity and a selected officer or key employee containing a promise by the employer to pay certain amounts at designated future dates, usually including a period after retirement, upon compliance with stipulated requirements. This type of arrangement is distinguished from broader based employee benefit plans as it is usually tailored to the employee. Disclosure also typically includes the amount of related compensation expense recognized during the reporting period, the number of shares (units) issued during the period under such arrangements, and the carrying amount as of the balance sheet date of the related liability.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 710<br> -URI http://asc.fasb.org/topic&amp;trid=2127225<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;">us-gaap_CompensationRelatedCostsGeneralTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<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 );">- References</a><div><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;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R20.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6705451936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Repurchase Program<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">Stock Repurchase Program</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Stock Repurchase Program</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">In April 2017, the Company's Board of Directors authorized the repurchase of </font><font style="font-family:Arial;font-size:10pt;">$100,000,000</font><font style="font-family:Arial;font-size:10pt;"> of the Company's common stock.  As of September 30, 2018, the Company had repurchased </font><font style="font-family:Arial;font-size:10pt;">1,744,000</font><font style="font-family:Arial;font-size:10pt;"> shares at a cost of </font><font style="font-family:Arial;font-size:10pt;">$100,000,000</font><font style="font-family:Arial;font-size:10pt;"> under this program, including </font><font style="font-family:Arial;font-size:10pt;">803,000</font><font style="font-family:Arial;font-size:10pt;"> shares at a cost of </font><font style="font-family:Arial;font-size:10pt;">$45,200,000</font><font style="font-family:Arial;font-size:10pt;"> in the three-month period ended April 1, 2018. Stock repurchases under this April 2017 program were completed in the three-month period ended April 1, 2018.  In February 2018, the Company's Board of Directors authorized the repurchase of an additional </font><font style="font-family:Arial;font-size:10pt;">$150,000,000</font><font style="font-family:Arial;font-size:10pt;"> of the Company's common stock.  As of September 30, 2018,  the Company had repurchased </font><font style="font-family:Arial;font-size:10pt;">1,947,000</font><font style="font-family:Arial;font-size:10pt;"> shares at a cost of </font><font style="font-family:Arial;font-size:10pt;">$97,062,000</font><font style="font-family:Arial;font-size:10pt;"> under this program, leaving a remaining authorized balance of </font><font style="font-family:Arial;font-size:10pt;">$52,938,000</font><font style="font-family:Arial;font-size:10pt;">.  Total stock repurchases in the nine-month period ended September 30, 2018 amounted to </font><font style="font-family:Arial;font-size:10pt;">$142,262,000</font><font style="font-family:Arial;font-size:10pt;">. The Company may repurchase shares under this program in future periods depending upon a variety of factors, including, among other things, the impact of dilution from employee stock options, stock price, share availability, and cash requirements.</font></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<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 );">- References</a><div><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;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -URI http://asc.fasb.org/topic&amp;trid=2208762<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;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R21.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6911367488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Taxes<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Taxes</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Taxes</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">A reconciliation of the United States federal statutory corporate tax rate to the Company&#8217;s income tax expense, or effective tax rate, was as follows:</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12" rowspan="1"></td></tr><tr><td style="width:39%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months&#160;Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income tax provision at federal statutory corporate tax rate</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">35</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">35</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">State income taxes, net of federal benefit</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign tax rate differential</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(7</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(18</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(7</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(18</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Tax credit</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Discrete tax benefit related to Tax Act 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(9</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(4</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Discrete tax benefit related to stock option exercises</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(4</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(7</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(5</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(13</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other discrete tax events</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(2</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(2</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income tax provision</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">On December 22, 2017, the United States Congress passed and the President signed into law the Tax Cuts and Jobs Act of 2017 (Tax Act).  The Tax Act included a decrease in the U.S. federal statutory corporate tax rate from </font><font style="font-family:Arial;font-size:10pt;">35%</font><font style="font-family:Arial;font-size:10pt;"> to </font><font style="font-family:Arial;font-size:10pt;">21%</font><font style="font-family:Arial;font-size:10pt;">, a one-time transition tax on unrepatriated foreign earnings, and limits on certain deductions.  The Securities and Exchange Commission (SEC) released Staff Accounting Bulletin (SAB) No. 118 to provide guidance to companies on how to implement the accounting and disclosure changes as a result of the Tax Act.  The Company made what it considered to be a reasonable estimate of the impact of the Tax Act in its financial statements for the year ended December 31, 2017.  In the third quarter of 2018, the Company revised its estimate of the impact of the Tax Act based on additional regulatory guidance.  The effective tax rate, as a result, was reduced by </font><font style="font-family:Arial;font-size:10pt;color:#000000;">9</font><font style="font-family:Arial;font-size:10pt;"> percentage points and </font><font style="font-family:Arial;font-size:10pt;color:#000000;">4</font><font style="font-family:Arial;font-size:10pt;"> percentage points for the three-month and nine-month period ended September 30, 2018, respectively.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">This significant estimate is highly judgmental and changes to this estimate could result in material charges or credits in future reporting periods.  The Company will continue to review the guidance at the Federal and State levels through the end of 2018 and additional revisions to the estimates of the impact of the Tax Act may be required in the fourth quarter of 2018 as regulatory guidance continues to develop, specifically at the individual State level.  The Tax Act subjects the Company to current tax on Global Intangible Low-Taxed Income (GILTI) earned by certain foreign subsidiaries.&#160; The Company has made an accounting policy election to provide for the tax expense related to GILTI in the year the tax is incurred rather than recognize deferred taxes for these temporary differences.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The majority of income earned outside of the United States is permanently reinvested to provide funds for international expansion.  The Company is tax resident in numerous jurisdictions around the world and has identified its major jurisdictions as the United States, Ireland, and China.  The statutory tax rate is </font><font style="font-family:Arial;font-size:10pt;">12.5%</font><font style="font-family:Arial;font-size:10pt;"> in Ireland and </font><font style="font-family:Arial;font-size:10pt;">25%</font><font style="font-family:Arial;font-size:10pt;"> in China, compared to the U.S. federal statutory corporate tax rate of </font><font style="font-family:Arial;font-size:10pt;">21%</font><font style="font-family:Arial;font-size:10pt;">.  International rights to certain of the Company's intellectual property are held by a subsidiary whose legal jurisdiction does not tax this income, resulting in a foreign effective tax rate that is lower than the above mentioned statutory rates, although the reduced taxes overseas have been partially offset by changes in U.S. tax law.  These differences resulted in a decrease in the effective tax rate by </font><font style="font-family:Arial;font-size:10pt;">7</font><font style="font-family:Arial;font-size:10pt;"> percentage points</font><font style="font-family:Arial;font-size:10pt;font-weight:bold;"> </font><font style="font-family:Arial;font-size:10pt;">for the three-month and </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, and a decrease in the effective tax rate by </font><font style="font-family:Arial;font-size:10pt;">18</font><font style="font-family:Arial;font-size:10pt;"> percentage points for the three-month and nine-month periods ended </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The excess tax benefit arising from the difference between the deduction for tax purposes and the compensation cost recognized for financial reporting purposes from stock option exercises resulted in a decrease of the effective tax rate by </font><font style="font-family:Arial;font-size:10pt;">4</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">7</font><font style="font-family:Arial;font-size:10pt;"> percentage points for the three-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">, respectively, and a decrease of the effective tax rate by </font><font style="font-family:Arial;font-size:10pt;">5</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">13</font><font style="font-family:Arial;font-size:10pt;"> percentage points for the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month periods ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">October&#160;1, 2017</font><font style="font-family:Arial;font-size:10pt;">, respectively.  Certain reserves for income taxes and other provision-to-return adjustments resulted in a decrease of the effective tax rate by </font><font style="font-family:Arial;font-size:10pt;color:#000000;">2</font><font style="font-family:Arial;font-size:10pt;"> percentage points for both the three-month periods ended September 30, 2018 and October 1, 2017 and a decrease of the effective tax rate by </font><font style="font-family:Arial;font-size:10pt;color:#000000;">1</font><font style="font-family:Arial;font-size:10pt;"> percentage point for both the nine-month periods ended September 30, 2018 and October 1, 2017.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">On January 1, 2018, the Company adopted Accounting Standard Update (ASU) 2016-16, "Income Taxes - Intra-Entity Transfers of Assets Other than Inventory."  This Update requires the recognition of deferred income taxes for an intra-entity transfer of an asset other than inventory.  As a result of this ASU, the Company recorded </font><font style="font-family:Arial;font-size:10pt;">$5,961,000</font><font style="font-family:Arial;font-size:10pt;"> through a cumulative-effect adjustment directly to retained earnings at the beginning of fiscal year 2018.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">During the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, the Company recorded a </font><font style="font-family:Arial;font-size:10pt;">$204,000</font><font style="font-family:Arial;font-size:10pt;"> increase in reserves for income taxes, net of deferred tax benefit.  Estimated interest and penalties included in these amounts totaled </font><font style="font-family:Arial;font-size:10pt;">$33,000</font><font style="font-family:Arial;font-size:10pt;"> for the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company&#8217;s reserve for income taxes, including gross interest and penalties, was </font><font style="font-family:Arial;font-size:10pt;">$7,674,000</font><font style="font-family:Arial;font-size:10pt;"> as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">, which included </font><font style="font-family:Arial;font-size:10pt;">$6,646,000</font><font style="font-family:Arial;font-size:10pt;"> classified as a non-current liability and </font><font style="font-family:Arial;font-size:10pt;">$1,028,000</font><font style="font-family:Arial;font-size:10pt;"> recorded as a reduction to non-current deferred tax assets.  The amount of gross interest and penalties included in these balances was </font><font style="font-family:Arial;font-size:10pt;">$773,000</font><font style="font-family:Arial;font-size:10pt;">.  If the Company&#8217;s tax positions were sustained or the statutes of limitations related to certain positions expired, these reserves would be released and income tax expense would be reduced in a future period.  As a result of the expiration of certain statutes of limitations, there is a potential that a portion of these reserves could be released, which would decrease income tax expense by approximately </font><font style="font-family:Arial;font-size:10pt;">$1,200,000</font><font style="font-family:Arial;font-size:10pt;"> to </font><font style="font-family:Arial;font-size:10pt;">$1,300,000</font><font style="font-family:Arial;font-size:10pt;"> over the next twelve months.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company has defined its major tax jurisdictions as the United States, Ireland, and China, and within the United States, Massachusetts.  Within the United States, the tax years </font><font style="font-family:Arial;font-size:10pt;">2015 through 2017</font><font style="font-family:Arial;font-size:10pt;"> remain open to examination by the Internal Revenue Service and various state tax authorities.  The tax years </font><font style="font-family:Arial;font-size:10pt;">2014 through 2017</font><font style="font-family:Arial;font-size:10pt;"> remain open to examination by various taxing authorities in other jurisdictions in which the Company operates.</font></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI http://asc.fasb.org/topic&amp;trid=2144680<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;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R22.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6650712848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Weighted-Average Shares<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Weighted-Average Shares</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Weighted-Average Shares</font></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Weighted-average shares were calculated as follows (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12" rowspan="1"></td></tr><tr><td style="width:39%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Basic weighted-average common shares outstanding</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">172,189</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">173,234</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">172,613</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">173,052</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Effect of dilutive stock options</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,056</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,120</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,408</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,072</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Weighted-average common and common-equivalent shares outstanding</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">177,245</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">179,354</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">178,021</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">179,124</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Stock options to purchase </font><font style="font-family:Arial;font-size:10pt;">2,796,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">2,353,000</font><font style="font-family:Arial;font-size:10pt;"> shares of common stock, on a weighted-average basis, were outstanding during the three-month and nine-month periods ended September 30, 2018, respectively, and </font><font style="font-family:Arial;font-size:10pt;">466,000</font><font style="font-family:Arial;font-size:10pt;"> and </font><font style="font-family:Arial;font-size:10pt;">3,108,000</font><font style="font-family:Arial;font-size:10pt;"> for the same periods in 2017, but were not included in the calculation of dilutive net income per share because they were anti-dilutive.</font></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 entire disclosure for earnings per share.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI http://asc.fasb.org/topic&amp;trid=2144383<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;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R23.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6919936864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent Events<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_SubsequentEventsAbstract', window );"><strong>Subsequent Events [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">Subsequent Events</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Subsequent Events</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">On October 29, 2018, the Company&#8217;s Board of Directors declared a cash dividend of </font><font style="font-family:Arial;font-size:10pt;">$0.050</font><font style="font-family:Arial;font-size:10pt;"> per share.  The dividend is payable </font><font style="font-family:Arial;font-size:10pt;">November&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> to all shareholders of record as of the close of business on </font><font style="font-family:Arial;font-size:10pt;">November&#160;16, 2018</font><font style="font-family:Arial;font-size:10pt;">. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">In addition, on October 29, 2018, the Company's Board of Directors authorized the repurchase of an additional </font><font style="font-family:Arial;font-size:10pt;">$200,000,000</font><font style="font-family:Arial;font-size:10pt;"> of the Company's common stock.  This new authorization will commence once the Company completes the February 2018 program.</font></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsAbstract">
<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 );">- References</a><div><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;">us-gaap_SubsequentEventsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI http://asc.fasb.org/topic&amp;trid=2122774<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;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R24.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6910214592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRecognitionPolicyTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Revenue Recognition</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company recognizes revenue in accordance with Accounting Standards Codification (ASC) 606, &#8220;Revenue from Contracts with Customers.&#8221; The core principle of ASC 606 is to recognize revenue in a manner that depicts the transfer of promised goods or services to customers in an amount that reflects the consideration to which the Company expects to be entitled in exchange for those goods or services.  The framework in support of this core principle includes: (1) identifying the contract with the customer; (2) identifying the performance obligations in the contract; (3) determining the transaction price; (4) allocating the transaction price to the performance obligations; and (5) recognizing revenue when (or as) the performance obligations are satisfied.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Identifying the Contract with the Customer</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company identifies contracts with customers as agreements that create enforceable rights and obligations, which typically take the form of customer contracts or purchase orders.  </font></div><div style="line-height:120%;padding-top:8px;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Identifying the Performance Obligations in the Contract</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company identifies performance obligations as promises in contracts to transfer distinct goods or services. Standard products and services that the Company regularly sells separately are accounted for as distinct performance obligations.  Application-specific customer solutions that are comprised of a combination of products and services are accounted for as one performance obligation to deliver a total solution to the customer.  On-site support services that are provided to the customer after the solution is deployed are accounted for as a separate performance obligation.  These solutions are provided to customers in a variety of industries, including the consumer electronics, logistics, and automotive industries.   </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Shipping and handling activities for which the Company is responsible under the terms and conditions of the sale are not accounted for as performance obligations but as fulfillment costs.  These activities are required to fulfill the Company&#8217;s promise to transfer the goods and are expensed when revenue is recognized.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company does not assess whether promised goods or services are performance obligations if they are immaterial in the context of the contract.  If revenue is recognized before immaterial promises have been completed, then the costs related to such immaterial promises are accrued at the time of sale.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Determining the Transaction Price</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company determines the transaction price as the amount of consideration it expects to receive in exchange for transferring promised goods or services to the customer.  Amounts collected from customers for sales taxes are excluded from the transaction price. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">If a contract includes a variable amount, such as a rebate, then the Company estimates the transaction price using either the expected value or the most likely amount of consideration to be received, depending upon the specific facts and circumstances.  The Company includes estimated variable consideration in the transaction price only to the extent it is probable that a significant reversal of revenue will not occur when the uncertainty is resolved.  The Company updates its estimate of variable consideration at the end of each reporting period to reflect changes in facts and circumstances.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Allocating the Transaction Price to the Performance Obligations</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company allocates the transaction price to each performance obligation at contract inception based on a relative stand-alone selling price basis, or the price at which the Company would sell the good or service separately to similar customers in similar circumstances.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Recognizing Revenue When (or As) the Performance Obligations are Satisfied</font></div><div style="line-height:120%;padding-top:4px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company recognizes revenue when it transfers the promised goods or services to the customer.  Revenue for standard products is recognized at the point in time when the customer obtains control of the goods, which is typically upon delivery when the customer has legal title, physical possession, the risks and rewards of ownership, and an enforceable obligation to pay for the products.  Revenue for services, which are not material, is typically recognized over the time the service is provided.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue for application-specific customer solutions is recognized at the point in time when the solution is validated, which is the point in time when the Company can objectively determine that the agreed-upon specifications in the contract have been met and the customer will accept the performance obligations in the arrangement.  Although the customer may have taken legal title and physical possession of the goods when they arrived at the customer&#8217;s designated site, the significant risks and rewards of ownership transfer to the customer only upon validation.  Revenue for on-site support services related to these solutions is recognized over the time the service is provided.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">In certain instances, an arrangement may include customer-specified acceptance provisions or performance guarantees that allow the customer to accept or reject delivered products that do not meet the customer&#8217;s specifications.  If the Company can objectively determine that control of a good or service has been transferred to the customer in accordance with the agreed-upon specifications in the contract, then customer acceptance is a formality.  If acceptance provisions are presumed to be substantive, then revenue is deferred until customer acceptance.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">For the Company&#8217;s standard products and services, revenue recognition and billing typically occur at the same time.  For application-specific customer solutions, however, the agreement with the customer may provide for billing terms which differ from revenue recognition criteria, resulting in either deferred revenue or unbilled revenue.  Credit assessments are performed to determine payment terms, which vary by region, industry, and customer.  Prepayment terms result in contract liabilities for customer deposits.  When credit is granted to customers, payment is typically due 30 to 90 days from billing.  The Company's contracts have an original expected duration of less than one year, and therefore as a practical expedient, the Company has elected to ignore the impact of the time value of money on a contract and to expense sales commissions.  The Company recognizes an asset for costs to fulfill a contract if the costs relate directly to the contract and to future performance, and the costs are expected to be recovered.  </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Management exercises judgment when determining the amount of revenue to be recognized each period.  Such judgments include, but are not limited to, assessing the customer&#8217;s ability and intention to pay substantially all of the contract consideration when due, determining when two or more contracts should be combined and accounted for as a single contract, determining whether a contract modification has occurred, assessing whether promises are immaterial in the context of the contract, determining whether material promises in a contract represent distinct performance obligations, estimating the transaction price for a contract that contains variable consideration, determining the stand-alone selling price of each performance obligation, determining whether control is transferred over time or at a point in time for performance obligations, and assessing whether formal customer acceptance provisions are substantive.</font></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">New Pronouncements</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2016-02 and 2018-11, "Leases"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2016-02 creates Topic 842, Leases.  The objective of this ASU is to increase transparency and comparability among organizations by recognizing lease assets and lease liabilities on the balance sheet, and disclosing key information about leasing arrangements.  This ASU applies to any entity that enters into a lease, although lessees will see the most significant changes.  The main difference between current GAAP and Topic 842 is the recognition of lease assets and lease liabilities on the balance sheet for those leases classified as operating leases under current GAAP.  Topic 842 distinguishes between finance leases and operating leases, which are substantially similar to the classification criteria for distinguishing between capital leases and operating leases under current GAAP.  For public companies, the guidance in ASU 2016-02 is effective for annual periods beginning after December 15, 2018, and interim periods within those fiscal years.  In July 2018, the Financial Accounting Standards Board issued ASU 2018-11 to amend ASU 2016-02 and provided an additional (and optional) transition method to adopt the new lease standard.  This transition method allows entities to apply the new lease standard at the adoption date and recognize a cumulative-effect adjustment to the opening balance of retained earnings in the period of adoption instead of using the original modified retrospective transition method of adoption which required the restatement of all prior period financial statements.  Under this new transition method, the comparative periods presented in the financial statements will continue to be in accordance with current GAAP (Topic 840, Leases).  Management will adopt the new lease standard using this new transition method under ASU 2018-11.  As of the date of this report, management has determined the scope of leases subject to the new accounting requirements, has selected a software package to assist with compliance, and has reviewed all leases in scope.  Management is in the process of completing the implementation of the lease accounting software, training relevant employees, and finalizing the internal lease accounting policy and the related processes, internal controls, and disclosures. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2016-13, "Financial Instruments - Measurement of Credit Losses"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2016-13 applies to all reporting entities holding financial assets that are not accounted for at fair value through net income (debt securities).&#160; The amendments in this ASU eliminate the probable initial recognition threshold to recognize a credit loss under current GAAP and, instead, reflect an entity&#8217;s current estimate of all expected credit losses.  In addition, this ASU broadens the information an entity must consider in developing the credit loss estimate, including the use of reasonable and supportable forecasted information.&#160; The amendments in this ASU require that credit losses on available-for-sale debt securities be presented as an allowance rather than as a write-down and an entity will be able to record reversals of credit losses in current period net income.  For public companies, the guidance in ASU 2016-13 is effective for annual periods beginning after December 15, 2019, and interim periods within those fiscal years.&#160; This ASU should be applied through a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is effective.&#160; Management does not expect ASU 2016-13 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2017-08, "Receivables - Nonrefundable Fees and Other Costs - Premium Amortization on Purchased Callable Debt Securities"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2017-08 applies to all reporting entities that hold investments in callable debt securities that have an amortized cost basis in excess of the amount that is repayable by the issuer at the earliest call date (that is, at a premium). The amendments in this ASU shorten the amortization period for certain callable debt securities held at a premium. Specifically, the amendments require the premium to be amortized to the earliest call date.  The amendments do not require an accounting change for securities held at a discount; the discount continues to be amortized to maturity.   Under current GAAP, premiums and discounts on callable debt securities generally are amortized to the maturity date. If that callable debt security is subsequently called, the entity records a loss equal to the unamortized premium.  The amendments in this ASU more closely align the amortization period of premiums and discounts to expectations incorporated in market pricing on the underlying securities.  For public companies, the amendments in ASU 2017-08 are effective for annual periods beginning after December 15, 2019, and interim reporting periods within fiscal years beginning after December 15, 2020.  This ASU should be applied on a modified retrospective basis through a cumulative-effect adjustment directly to retained earnings as of the beginning of the period of adoption, and, in the period of adoption, the entity is required to provide disclosures about the change in accounting principle.  Early adoption is permitted, including adoption in an interim period.  Management does not expect ASU 2017-08 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2017-12, "Derivatives and Hedging - Targeted Improvements to Accounting for Hedging Activities"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2017-12 applies to all reporting entities that elect to apply hedge accounting.  The hedge accounting requirements under current GAAP sometimes do not permit an entity to properly recognize the economic results of the hedging strategy in the financial statements, and they are difficult to understand and interpret.  The amendments in this ASU make certain targeted improvements to simplify the application of the hedge accounting guidance.  Also, they better align the risk management activities and financial reporting for hedging relationships through changes to both 1) the designation and measurement guidance for qualifying hedging relationships and 2) the presentation of hedge results.  For public companies, the amendments in ASU 2017-12 are effective for annual reporting periods beginning after December 15, 2018, and interim reporting periods within those fiscal years.  Early adoption is permitted including adoption in any interim period after issuance of the ASU.  All transition requirements and elections should be applied to hedging relationships existing on the date of adoption.  The entity should apply a cumulative-effect adjustment related to eliminating the separate measurement of ineffectiveness to accumulated other comprehensive income with a corresponding adjustment to the opening balance of retained earnings as of the beginning of the fiscal year that an entity adopts the amendments in this ASU.  The amended presentation and disclosure guidance is required only prospectively.  Management does not expect ASU 2017-12 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2018-01, "Land Easement Practical Expedient for Transition to Topic 842"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2018-01 applies to entities with land easements that exist or expired before an entity&#8217;s adoption of Topic 842, provided that the entity does not account for those land easements as leases under Topic 840.  The amendments in this ASU permit an entity to elect an optional transition practical expedient to not evaluate under Topic 842 land easements that exist or expired before the entity&#8217;s adoption of Topic 842 and that were not previously accounted for as leases under Topic 840.  An entity that elects this practical expedient should apply the practical expedient consistently to all of its existing or expired land easements that were not previously accounted for as leases under Topic 840.  Once an entity adopts Topic 842, it should apply that Topic prospectively to all new (or modified) land easements to determine whether the arrangement should be accounted for as a lease.  An entity that does not elect this practical expedient should evaluate all existing or expired land easements in connection with the adoption of the new lease requirements in Topic 842 to assess whether they meet the definition of a lease.  The amendments in this ASU affect the amendments in ASU 2016-02, which are not yet effective but may be early adopted.  The effective date and transition requirements for the amendments are the same as the effective date and transition requirements in ASU 2016-02, which is for annual periods beginning after December 15, 2018, and interim periods within those fiscal years. Management does not expect ASU 2018-01 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2018-02, "Income Statement - Reporting Comprehensive Income"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2018-02 applies to entities required to apply the provisions of Topic 220, Income Statement - Reporting Comprehensive Income, and has items of other comprehensive income for which the related tax effects are presented in other comprehensive income as required by GAAP.  The amendments in this ASU allow a reclassification from accumulated other comprehensive income to retained earnings for stranded tax effects resulting from the Tax Cuts and Jobs Act of 2017 (the "Tax Act").  Consequently, the amendments eliminate the stranded tax effects resulting from the Tax Act and will improve the usefulness of information reported to financial statement users.  However, because the amendments only relate to the reclassification of the income tax effects of the Tax Act, the underlying guidance that requires the effect of a change in tax laws or rates to be included in income from continuing operations is not affected.  The amendments in this ASU also require certain disclosures about stranded tax effects.  The amendments in this ASU are effective for all entities for fiscal years beginning after December 15, 2018, and interim periods within those fiscal years.  Early adoption of the amendments in this ASU is permitted, including adoption in any interim period.  The amendments in this ASU should be applied either in the period of adoption or retrospectively to each period (or periods) in which the effect of the change in the U.S. federal corporate income tax rate in the Tax Act is recognized.  Management does not expect ASU 2018-02 to have a material impact on the Company's financial statements and disclosures. </font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2018-07, "Compensation - Stock Compensation - Improvements to Nonemployee Share-Based Payment Accounting"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2018-07 applies to all entities that enter into share-based payment transactions for acquiring goods and services from nonemployees.  The amendments in this ASU expand the scope of Topic 718, Compensation - Stock Compensation, to include share-based payments transactions to nonemployees.  Changes to the accounting for nonemployee awards as a result of this ASU include: 1) equity-classified nonemployee share-based payment awards are measured at the grant date, instead of the previous requirement to remeasure the awards through the performance completion date, 2) for awards with performance conditions, compensation cost is recognized when the achievement of the performance condition is probable, rather than upon achievement, and 3) the current requirement to reassess the classification (equity or liability) for nonemployee awards upon vesting is eliminated.  This ASU clarifies that Topic 718 does not apply to financing transactions or awards granted to customers as part of a contract accounted for under Topic 606, Revenue from Contracts with Customers.  The amendments in this ASU are effective for public business entities for fiscal years beginning after December 15, 2018, and interim periods within those fiscal years.  An entity should only remeasure liability-classified awards that have not been settled by the date of adoption and equity-classified awards for which the measurement date has not been established through a cumulative-effect adjustment to retained earnings as of the beginning of the fiscal year of adoption.  Management does not expect ASU 2018-07 to have a material impact on the Company's financial statements and disclosures.</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Accounting Standards Update (ASU) 2018-15, "Intangibles - Goodwill and Other - Internal-Use Software"</font></div><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">ASU 2018-15 applies to entities that are a customer in a hosting arrangement that is a service contract.  The amendments  in this ASU align the requirements for capitalizing implementation costs incurred in a hosting arrangement that is a service contract with the requirements for capitalizing implementation costs incurred to develop or obtain internal-use software.  Accordingly, the amendments in this ASU require an entity in a hosting arrangement that is a service contract to follow the guidance in Subtopic 350-40 to determine which implementation costs to capitalize as an asset related to the service contract and which costs to expense. Further, it requires the entity to expense the capitalized implementation costs over the term of the hosting arrangement.  In addition, it requires the presentation of the expenses related to the capitalized implementation costs in the same line item in the statement of income as the fees associated with the hosting element of the arrangement and the classification of the payments for the capitalized implementation costs in the statement of cash flows in the same manner as the payments made for the fees associated with the hosting element.  The amendments in this ASU are effective for public entities for fiscal years beginning after December 15, 2019, and interim periods within those fiscal years, with early adoption permitted.  Management does not expect ASU 2018-15 to have a material impact on the Company's financial statement and disclosures.</font></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRecognitionPolicyTextBlock">
<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>Disclosure of accounting policy for revenue recognition. If the entity has different policies for different types of revenue transactions, the policy for each material type of transaction is generally disclosed. If a sales transaction has multiple element arrangements (for example, delivery of multiple products, services or the rights to use assets) the disclosure may indicate the accounting policy for each unit of accounting as well as how units of accounting are determined and valued. The disclosure may encompass important judgment as to appropriateness of principles related to recognition of revenue. The disclosure also may indicate the entity's treatment of any unearned or deferred revenue that arises from the transaction.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18823-107790<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.B.Q1)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18726-107790<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;">us-gaap_RevenueRecognitionPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R25.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6930998528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock', window );">Assets and Liabilities Measured at Fair Value on a Recurring Basis</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the financial assets and liabilities required to be measured at fair value on a recurring basis as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12" rowspan="1"></td></tr><tr><td style="width:50%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Quoted&#160;Prices&#160;in</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Active Markets</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">for Identical</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Assets (Level 1)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Significant&#160;    Other</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Observable</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Inputs (Level 2)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;"><br clear="none"/>Unobservable<br clear="none"/>Inputs                                                                                                                                                                             (Level 3)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Assets:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Money market instruments</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,717</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">314,106</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">226,058</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">131,549</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">14,437</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,909</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,886</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Economic hedge forward contracts</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">21</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Liabilities:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Economic hedge forward contracts</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">91</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Contingent consideration liabilities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,507</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock', window );">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the activity for the Company's liability measured at fair value using Level 3 inputs for the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> (in thousands):</font></div><div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4" rowspan="1"></td></tr><tr><td style="width:85%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,557</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Fair value adjustment to Manatee contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1,350</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Fair value adjustment to GVi contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,130</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Fair value adjustment to Chiaro contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">170</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Payment of GVi contingent consideration</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1,000</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,507</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock">
<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>Tabular disclosure of the fair value measurement of liabilities using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets), and gains or losses recognized in other comprehensive income (loss) and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs) by class of liability.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=66048111&amp;loc=d3e19279-110258<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=66048111&amp;loc=d3e19207-110258<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;">us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock">
<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>Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=66048111&amp;loc=d3e19190-110258<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;">us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R26.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6657638128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_CashAndCashEquivalentsAbstract', window );"><strong>Cash and Cash Equivalents [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock', window );">Components of Cash, Cash Equivalents, and Investments</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash, cash equivalents, and investments consisted of the following (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8" rowspan="1"></td></tr><tr><td style="width:63%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:16%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:16%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">104,654</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">97,951</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Money market instruments</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,717</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,631</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cash and cash equivalents</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">107,371</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">106,582</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">193,347</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">150,371</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">138,099</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">47,395</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">71,438</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">59,203</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">8,119</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">21,579</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,044</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,805</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10,608</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Short-term investments</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">420,016</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">297,961</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">176,007</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">296,014</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">60,111</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">71,727</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">32,711</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">23,459</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,318</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,147</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,940</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">14,890</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">842</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,204</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Long-term investments</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">281,929</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">423,441</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">809,316</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">827,984</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock', window );">Summary of Available-for-Sale Investments</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the Company&#8217;s available-for-sale investments as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"><tr><td colspan="16" rowspan="1"></td></tr><tr><td style="width:44%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Amortized<br clear="none"/>Cost</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Gross<br clear="none"/>Unrealized<br clear="none"/>Gains</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Gross<br clear="none"/>Unrealized<br clear="none"/>Losses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Fair&#160;Value</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Short-term:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">193,631</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(284</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">193,347</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">138,383</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">56</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(340</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">138,099</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">71,646</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(209</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">71,438</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,172</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(53</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,119</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,050</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(6</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,044</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Long-term:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">175,881</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">469</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(343</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">176,007</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">60,276</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">33</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(198</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">60,111</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32,718</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">7</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(14</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32,711</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,286</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,318</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,930</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,940</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">855</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(13</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">842</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">702,797</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">608</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,460</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">701,945</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock', window );">Gross Unrealized Losses and Fair Values for Available-for-Sale Investments</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the Company&#8217;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"><tr><td colspan="24" rowspan="1"></td></tr><tr><td style="width:29%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="15" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Unrealized Loss Position For:</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:left;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Less than 12 Months</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">12 Months or Greater</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Fair&#160;Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Unrealized</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Losses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Fair&#160;Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Unrealized</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Losses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Fair&#160;Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Unrealized</font></div><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Losses</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">137,108</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(174</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">63,030</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(124</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">200,138</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(298</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">116,028</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(386</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">42,922</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(297</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">158,950</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(683</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">57,678</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(207</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">38,256</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(200</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">95,934</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(407</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,527</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(6</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,592</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(47</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,119</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(53</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,854</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(6</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">842</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(13</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,696</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(19</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">317,195</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(779</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">149,642</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(681</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">466,837</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1,460</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock', window );">Effective Maturity Dates of Available-for-Sale Investments</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table presents the effective maturity dates of the Company&#8217;s available-for-sale investments as of </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;"> (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.22027290448344%;border-collapse:collapse;text-align:left;"><tr><td colspan="28" rowspan="1"></td></tr><tr><td style="width:24%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">&lt;1 year</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">1-2 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">2-3 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">3-4 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">4-5 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">5-7 Years</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Corporate bonds</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">138,099</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">80,605</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">68,684</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">22,429</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,434</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,855</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">314,106</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Treasury bills</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">193,347</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">32,711</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">226,058</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Asset-backed securities</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">71,438</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">30,840</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,431</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">12,102</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,138</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,600</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">131,549</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Sovereign bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,119</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,318</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">14,437</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Agency bonds</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,940</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,909</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Municipal bonds</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,044</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">842</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,886</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">420,016</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">151,316</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">74,115</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">40,471</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,572</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">9,455</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">701,945</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Components of cash cash equivalents and investments.</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;">cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of maturities of an entity's investments as well as any other information pertinent to the investments.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of the reconciliation of available-for-sale securities from cost basis to fair value.</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;">us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For all investments in an unrealized loss position, including those for which other-than-temporary impairments have not been recognized in earnings (including investments for which a portion of an other-than-temporary impairment has been recognized in other comprehensive income), a tabular disclosure of the aggregate related fair value of investments with unrealized losses and the aggregate amount of unrealized losses (that is, the amount by which amortized cost basis exceeds fair value).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27290-111563<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;">us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R27.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6762471088">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of Inventories</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Inventories consisted of the following (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8" rowspan="1"></td></tr><tr><td style="width:63%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:16%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:16%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Raw materials</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">46,660</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">33,927</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Work-in-process</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,071</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,114</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Finished goods</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">43,304</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">31,882</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">94,035</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">67,923</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R28.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6907872560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Intangible Assets</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:6px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Amortized intangible assets consisted of the following (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12" rowspan="1"></td></tr><tr><td style="width:53%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Gross</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Carrying</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Accumulated</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Amortization</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Net</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Carrying</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Distribution networks</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">38,060</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">38,060</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Completed technologies</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">13,687</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6,010</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">7,677</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Customer relationships</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">8,607</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,587</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">3,020</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Non-compete agreements</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">370</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">185</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">185</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">60,724</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">49,842</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">10,882</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:inherit;font-size:8pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Gross</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Carrying</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Accumulated</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Amortization</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Net</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Carrying</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Distribution networks</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">38,060</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">38,060</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Completed technologies</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,687</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,181</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,506</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Customer relationships</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,607</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,202</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,405</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Non-compete agreements</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">370</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">92</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">278</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">60,724</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">47,535</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,189</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Schedule of Intangible Assets, Future Amortization Expense</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:6px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As of September 30, 2018, estimated future amortization expense related to intangible assets is as follows (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="5" rowspan="1"></td></tr><tr><td style="width:82%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:15%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;font-weight:bold;text-decoration:underline;">Year Ended December&#160;31,</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;font-weight:bold;">Amount</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Remainder of fiscal 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">769</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2019</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,701</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2020</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,185</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2021</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,017</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2022</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,691</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2023</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">989</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Thereafter</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">530</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">10,882</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<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;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R29.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6915961296">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty Obligations (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_ProductWarrantiesDisclosuresAbstract', window );"><strong>Product Warranties Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Changes in Warranty Obligations</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The changes in the warranty obligation were as follows (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4" rowspan="1"></td></tr><tr><td style="width:82%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:16%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,701</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Provisions for warranties issued during the period</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3,376</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Fulfillment of warranty obligations</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(3,223</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign exchange rate changes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(117</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,737</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantiesDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_ProductWarrantiesDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<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;">us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R30.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6606189952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Instruments (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_OutstandingForwardContractsTableTextBlock', window );">Outstanding Forward Contracts Table</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The Company had the following outstanding forward contracts (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="14" rowspan="1"></td></tr><tr><td style="width:47%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:10%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Currency</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Notional<br clear="none"/>Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">USD<br clear="none"/>Equivalent</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Notional<br clear="none"/>Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">USD<br clear="none"/>Equivalent</font></div></td></tr><tr><td colspan="7" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Derivatives Not Designated as Hedging Instruments:</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Euro</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">19,500</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">22,602</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Japanese Yen</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">455,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">455,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,049</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">British Pound</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,100</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,742</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,650</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,232</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Hungarian Forint</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">700,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,513</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">545,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,110</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Korean Won</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2,050,000</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,847</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,825,000</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,708</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Taiwanese Dollar</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">49,000</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,615</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">37,725</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,278</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Canadian Dollar</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">800</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">616</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Singapore Dollar</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">760</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">557</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Swiss Franc</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,365</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,401</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock', window );">Schedule of Derivative Instruments in Statement of Financial Position, Fair Value</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Information regarding the fair value of the outstanding forward contracts was as follows (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="20" rowspan="1"></td></tr><tr><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:17%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:10%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Asset Derivatives</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Liability Derivatives</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Balance</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Fair Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Balance</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Fair Value</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Sheet<br clear="none"/>Location</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December 31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Sheet<br clear="none"/>Location</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December 31, 2017</font></div></td></tr><tr><td colspan="10" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Derivatives Not Designated as Hedging Instruments:<br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Economic hedge forward contracts</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Prepaid&#160;expenses&#160;and other current assets</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">16</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accrued expenses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">91</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OffsettingAssetsTableTextBlock', window );">Offsetting Assets</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table presents the gross activity for all derivative assets and liabilities which were presented on a net basis on the Consolidated Balance Sheets due to the right of offset with each counterparty (in thousands):</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:99.80506822612085%;border-collapse:collapse;text-align:left;"><tr><td colspan="19" rowspan="1"></td></tr><tr><td style="width:18%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:19%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Asset Derivatives</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="9" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Liability Derivatives</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September&#160;30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December&#160;31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September&#160;30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">December&#160;31, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross amounts of recognized assets</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">16</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross amounts of recognized liabilities</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">91</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross amounts offset</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross amounts offset</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net amount of assets presented</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">16</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net amount of liabilities presented</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">91</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock', window );">Derivative Instruments, Gain (Loss)</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Information regarding the effect of derivative instruments on the consolidated financial statements was as follows (in thousands):</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="18" rowspan="1"></td></tr><tr><td style="width:22%;" rowspan="1" colspan="1"></td><td style="width:21%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:10%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Location in Financial Statements</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:9pt;"><font style="font-family:Arial;font-size:9pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td colspan="11" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Derivatives Designated as Hedging Instruments:</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gains (losses) recorded in shareholders' equity (effective portion)</font></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accumulated other comprehensive income (loss), net of tax</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations (effective portion)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">56</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Research, development, and engineering expenses</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">3</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Selling, general, and administrative expenses</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Total gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">56</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gains (losses) recognized in current operations (ineffective portion and discontinued derivatives)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign currency gain (loss)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td colspan="11" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-style:italic;">Derivatives Not Designated as Hedging Instruments:</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gains (losses) recognized in current operations</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign currency gain (loss)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">299</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">43</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(366</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">139</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_OutstandingForwardContractsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Outstanding forward contracts table.</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;">cgnx_OutstandingForwardContractsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OffsettingAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of derivative and other financial assets that are subject to offsetting, including master netting arrangements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=51824906&amp;loc=SL20225862-175312<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=51824906&amp;loc=SL20225877-175312<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;">us-gaap_OffsettingAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5624171-113959<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5618551-113959<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;">us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of the location and fair value amounts of derivative instruments (and nonderivative instruments that are designated and qualify as hedging instruments) reported in the statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4B<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5624163-113959<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;">us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>R31.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6920048480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">Schedule of New Accounting Pronouncements and Changes in Accounting Principles</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The adoption of the standard impacted our previously-reported results as follows (in thousands):</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="24" rowspan="1"></td></tr><tr><td style="width:30%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:9%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:10%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:10%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:8%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Statement of Operations</font></div><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As previously reported</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Adjustment</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As restated</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As previously reported</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Adjustment</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As restated</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Revenue</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">259,739</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,303</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">266,042</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">567,585</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">15,576</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">583,161</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cost of revenue</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">62,360</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5,701</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">68,061</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">128,056</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">14,701</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">142,757</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Gross margin</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">197,379</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">602</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">197,981</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">439,529</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">875</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">440,404</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Operating income</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">110,247</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">602</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">110,849</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">207,211</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">875</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">208,086</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income before income tax expense</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">112,150</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">602</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">112,752</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">212,918</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">875</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">213,793</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income tax expense (benefit)</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,802</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">457</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">10,259</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,843</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">491</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,334</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net income</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">102,348</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">145</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">102,493</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">204,075</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">384</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">204,459</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td colspan="24" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Net income per weighted-average common and common-equivalent share:</font></div></td></tr><tr><td style="vertical-align:top;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Basic</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.59</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.59</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.18</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.18</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Diluted</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.57</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.57</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.14</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1.14</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.609375%;border-collapse:collapse;text-align:left;"><tr><td colspan="12" rowspan="1"></td></tr><tr><td style="width:58%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;text-decoration:underline;">Balance Sheet</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">December 31, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As previously reported</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Adjustment</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">As restated</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Prepaid expenses and other current assets</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">30,800</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(117</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">30,683</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Accrued income taxes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">11,391</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">112</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">11,503</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Deferred revenue and customer deposits</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,969</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(549</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,420</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Retained earnings</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">668,267</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">320</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">668,587</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock', window );">Revenue from External Customers by Geographic Areas</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands):</font><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17" rowspan="1"></td></tr><tr><td style="width:38%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Europe</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">115,592</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">146,230</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">242,161</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">252,386</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Americas</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">58,830</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">54,902</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">189,859</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">155,977</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Greater China</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">32,796</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">35,546</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">101,130</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">84,764</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other Asia</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">25,003</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">29,364</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">79,902</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">90,034</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">232,221</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">266,042</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">613,052</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">583,161</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock', window );">Revenue from External Customers by Products and Services</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes disaggregated revenue information by revenue type (in thousands):</font></div><div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17" rowspan="1"></td></tr><tr><td style="width:38%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Standard products and services</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">150,993</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">159,981</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">493,019</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">453,464</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Application-specific customer solutions</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">81,228</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">106,061</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">120,033</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">129,697</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">232,221</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">266,042</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">613,052</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">583,161</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock', window );">Deferred Revenue, by Arrangement, Disclosure</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:4px;text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the deferred revenue and customer deposits activity for the nine-month period ended September 30, 2018 (in thousands):</font></div><div style="line-height:120%;padding-top:4px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.609375%;border-collapse:collapse;text-align:left;"><tr><td colspan="4" rowspan="1"></td></tr><tr><td style="width:80%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:18%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Amount</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of December 31, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9,420</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Increases to deferred revenue and customer deposits</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">55,408</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Recognition of revenue</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(50,590</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign exchange rate changes</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(986</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Balance as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">13,252</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock">
<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>Tabular disclosure of the type of arrangements and the corresponding amounts that comprise the current and noncurrent balance of deferred revenue as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.4(a).Q1)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6935-107765<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;">us-gaap_DeferredRevenueByArrangementDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of revenue from external customers by geographic areas attributed to the entity's country of domicile and to foreign countries from which the entity derives revenue.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph a<br> -URI http://asc.fasb.org/extlink&amp;oid=68060357&amp;loc=d3e9038-108599<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;">us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of entity-wide revenues from external customers for each product or service or each group of similar products or services if the information is not provided as part of the reportable operating segment information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=68060357&amp;loc=d3e9031-108599<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;">us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<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>Tabular disclosure of changes in accounting principles, including adoption of new accounting pronouncements, that describes the new methods, amount and effects on financial statement line items.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=64853466&amp;loc=d3e22580-107794<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=68064558&amp;loc=d3e765-108305<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=64853466&amp;loc=d3e22499-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.10-01.(b)(6))<br> -URI http://asc.fasb.org/extlink&amp;oid=27015980&amp;loc=d3e46468-122699<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=64853466&amp;loc=d3e22583-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=68064558&amp;loc=d3e725-108305<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;">us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R32.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6764427728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Disclosure of Compensation Related Costs, Share-based Payments [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_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Summary of Stock Option Activity</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the Company&#8217;s stock option activity for the </font><font style="font-family:Arial;font-size:10pt;">nine</font><font style="font-family:Arial;font-size:10pt;">-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">:</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13" rowspan="1"></td></tr><tr><td style="width:39%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:11%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:15%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Shares</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(in&#160;thousands)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Weighted-</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Average</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Exercise</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Price</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Weighted-</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Average</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Remaining</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Contractual</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Term&#160;(in&#160;years)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Aggregate</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Intrinsic</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Value</font></div><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(in&#160;thousands)</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Outstanding as of December 31, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">12,726</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">25.24</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Granted</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,318</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">55.66</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Exercised</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1,434</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">18.06</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Forfeited or expired</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(429</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">33.24</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Outstanding as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">13,181</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">31.11</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">7.48</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">329,301</font></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Exercisable as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">4,327</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">20.14</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6.01</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">154,377</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Options vested or expected to vest as of September 30, 2018 (1)</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">11,916</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">29.99</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:3px double #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">7.37</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">310,772</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div><div style="line-height:120%;padding-top:8px;text-align:justify;padding-left:48px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;(1) In addition to the vested options, the Company expects a portion of the unvested options to vest at some point in the future.  Options expected to vest are calculated by applying an estimated forfeiture rate to the unvested options.</font></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The fair values of stock options granted in each period presented were estimated using the following weighted-average assumptions:</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12" rowspan="1"></td></tr><tr><td style="width:39%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months&#160;Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Risk-free rate</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2.9</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2.4</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">2.9</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2.4</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Expected dividend yield</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">0.32</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.39</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">0.32</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">0.39</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Expected volatility</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">39</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">41</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">39</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">41</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Expected term (in years)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5.4</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5.1</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5.3</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">5.3</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock', window );">Nonvested Restricted Stock Shares Activity</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table summarizes the Company's restricted stock activity for the nine-month period ended </font><font style="font-family:Arial;font-size:10pt;">September&#160;30, 2018</font><font style="font-family:Arial;font-size:10pt;">: </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="11" rowspan="1"></td></tr><tr><td style="width:48%;" rowspan="1" colspan="1"></td><td style="width:15%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:16%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Shares                   (in thousands)</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Weighted-Average     Grant Fair Value</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Aggregate Intrinsic Value                  (in thousands)</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Nonvested as of December 31, 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">20</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">17.03</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Granted</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Vested</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(20</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">17.03</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">993</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Forfeited or expired</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Nonvested as of September 30, 2018</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;text-decoration:line-through;">&#8212;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">The following table presents the stock-based compensation expense by caption for each period presented on the Consolidated Statements of Operations (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16" rowspan="1"></td></tr><tr><td style="width:38%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:12%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Cost of revenue</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">544</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">520</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1,898</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1,404</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Research, development, and engineering</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">3,197</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">2,765</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">11,166</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,090</font></div></td><td style="vertical-align:bottom;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Selling, general, and administrative</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,402</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4,741</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">18,275</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">13,861</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">9,143</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">8,026</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">31,339</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">$</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">23,355</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock">
<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>Tabular disclosure of the changes in outstanding nonvested restricted stock shares.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<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>Tabular disclosure of the allocation of equity-based compensation costs to a given line item on the balance sheet and income statement for the period. This may include the reporting line for the costs and the amount capitalized and expensed.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5047-113901<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=27013229&amp;loc=d3e301413-122809<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;">us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<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>Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R33.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6762515664">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Reconciliation of United States Federal Statutory Corporate Tax Rate to Company's Effective Tax Rate, or Income Tax Provision</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;text-align:justify;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">A reconciliation of the United States federal statutory corporate tax rate to the Company&#8217;s income tax expense, or effective tax rate, was as follows:</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12" rowspan="1"></td></tr><tr><td style="width:39%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months&#160;Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income tax provision at federal statutory corporate tax rate</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">35</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">21</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">35</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">State income taxes, net of federal benefit</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Foreign tax rate differential</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(7</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(18</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(7</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(18</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Tax credit</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#8212;</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Discrete tax benefit related to Tax Act 2017</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(9</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(4</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#8212;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Discrete tax benefit related to stock option exercises</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(4</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(7</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(5</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(13</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other discrete tax events</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(2</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(2</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">(1</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">)%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">(1</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">)%</font></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Other</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">1</font></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Income tax provision</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">1</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">9</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">6</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">&#160;%</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">4</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">&#160;%</font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<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>Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<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;">us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>R34.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6637916368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Weighted-Average Shares (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2018</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_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock', window );">Calculation of Weighted-Average Shares</a></td>
<td class="text"><div style="font-family:Times New Roman;font-size:10pt;"><div style="line-height:120%;padding-top:8px;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Weighted-average shares were calculated as follows (in thousands):</font></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12" rowspan="1"></td></tr><tr><td style="width:39%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:14%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td><td style="width:13%;" rowspan="1" colspan="1"></td><td style="width:1%;" rowspan="1" colspan="1"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Three-months Ended</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">Nine-months Ended</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:8pt;"><font style="font-family:Arial;font-size:8pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">September 30, 2018</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1"><div style="text-align:center;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">October 1, 2017</font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Basic weighted-average common shares outstanding</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">172,189</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">173,234</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">172,613</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">173,052</font></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Effect of dilutive stock options</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,056</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,120</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">5,408</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">6,072</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">Weighted-average common and common-equivalent shares outstanding</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">177,245</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">179,354</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;font-weight:bold;">178,021</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;" rowspan="1" colspan="1"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;" rowspan="1" colspan="1"><div style="text-align:right;font-size:10pt;"><font style="font-family:Arial;font-size:10pt;">179,124</font></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;" rowspan="1" colspan="1"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br clear="none"/></font></div></td></tr></table></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Tabular disclosure of the weighted average number of shares used in calculating basic net earnings per share (or unit) and diluted earnings per share (or unit).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<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;">us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>R35.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6773199984">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value Measurements - Assets and Liabilities Measured at Fair Value on a Recurring Basis (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</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_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MoneyMarketFundsAtCarryingValue', window );">Money market instruments</a></td>
<td class="nump">$ 2,717<span></span>
</td>
<td class="nump">$ 8,631<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_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">701,945<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">314,106<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury Bills</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">226,058<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-Backed Securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">131,549<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">14,437<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember', window );">Agency Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">8,909<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember', window );">Municipal Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">6,886<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Quoted Prices in Active Markets for Identical Assets (Level 1) | Fair Value, Measurements, Recurring</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MoneyMarketFundsAtCarryingValue', window );">Money market instruments</a></td>
<td class="nump">2,717<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MoneyMarketFundsAtCarryingValue', window );">Money market instruments</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure', window );">Economic hedge forward contracts</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosureAbstract', window );"><strong>Liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure', window );">Economic hedge forward contracts</a></td>
<td class="nump">91<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | Corporate Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">314,106<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | Treasury Bills</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">226,058<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | Asset-Backed Securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">131,549<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | Sovereign Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">14,437<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | Agency Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">8,909<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | Municipal Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">6,886<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Fair Value, Inputs, Level 3 | Fair Value, Measurements, Recurring</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosureAbstract', window );"><strong>Liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration liabilities</a></td>
<td class="nump">$ 2,507<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsFairValueDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_AssetsFairValueDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of debt securities categorized neither as held-to-maturity nor trading.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 25<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=75030427&amp;loc=d3e22054-111558<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=82896770&amp;loc=d3e26610-111562<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27161-111563<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 320<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)-(g)<br> -URI http://asc.fasb.org/extlink&amp;oid=75019621&amp;loc=d3e62557-112803<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;">us-gaap_AvailableForSaleSecuritiesDebtSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationContingentConsiderationLiability">
<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>Amount of liability recognized arising from contingent consideration in a business combination.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e6927-128479<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 35<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6911338&amp;loc=d3e6819-128478<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6408-128476<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;">us-gaap_BusinessCombinationContingentConsiderationLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure">
<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>Fair value portion of asset contracts related to the exchange of different currencies, including, but not limited to, foreign currency options, forward contracts, and swaps.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_ForeignCurrencyContractAssetFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Fair value portion of liability contracts related to the exchange of different currencies, including, but not limited to, foreign currency options, forward (delivery or nondelivery) contracts, and swaps entered into.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesFairValueDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_LiabilitiesFairValueDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MoneyMarketFundsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Investment in short-term money-market instruments (such as commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and so forth) which are highly liquid (that is, readily convertible to known amounts of cash) and so near their maturity that they present an insignificant risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify as cash equivalents by definition. Original maturity means an original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_MoneyMarketFundsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R36.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6757682736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements - Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems', window );"><strong>Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_Paymentofcontingentconsideration', window );">Payment of contingent consideration</a></td>
<td class="num">$ (1,000)<span></span>
</td>
<td class="num">$ (1,926)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Fair Value, Inputs, Level 3 | Fair Value, Measurements, Recurring</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems', window );"><strong>Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue', window );">Beginning balance</a></td>
<td class="nump">3,557<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue', window );">Ending balance</a></td>
<td class="nump">2,507<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cgnx_ManateeWorksInc.Member', window );">Manatee | Fair Value, Inputs, Level 3 | Fair Value, Measurements, Recurring</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems', window );"><strong>Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueAdjustment', window );">Liabilities, Fair Value Adjustment</a></td>
<td class="num">(1,350)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cgnx_GViVenturesInc.Member', window );">GVi | Fair Value, Inputs, Level 3 | Fair Value, Measurements, Recurring</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems', window );"><strong>Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueAdjustment', window );">Liabilities, Fair Value Adjustment</a></td>
<td class="nump">1,130<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_Paymentofcontingentconsideration', window );">Payment of contingent consideration</a></td>
<td class="num">(1,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cgnx_ChiaroTechnologiesLLCMember', window );">Chiaro Technologies LLC [Member] | Fair Value, Inputs, Level 3 | Fair Value, Measurements, Recurring</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems', window );"><strong>Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueAdjustment', window );">Liabilities, Fair Value Adjustment</a></td>
<td class="nump">$ 170<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_Paymentofcontingentconsideration">
<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>Payment of contingent consideration from a business combination</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;">cgnx_Paymentofcontingentconsideration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue">
<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>Fair value of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=66048111&amp;loc=d3e19207-110258<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;">us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesFairValueAdjustment">
<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>Amount of addition (reduction) to the amount at which a liability could be incurred (settled) in a current transaction between willing parties.</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;">us-gaap_LiabilitiesFairValueAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=cgnx_ManateeWorksInc.Member">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=cgnx_ManateeWorksInc.Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=cgnx_GViVenturesInc.Member">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=cgnx_GViVenturesInc.Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=cgnx_ChiaroTechnologiesLLCMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=cgnx_ChiaroTechnologiesLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>R37.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6762487728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_CashAndCashEquivalentsAbstract', window );"><strong>Cash and Cash Equivalents [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesGrossRealizedGains', window );">Gross realized gains on sale of investments</a></td>
<td class="nump">$ 283,000<span></span>
</td>
<td class="nump">$ 306,000<span></span>
</td>
<td class="nump">$ 646,000<span></span>
</td>
<td class="nump">$ 449,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses', window );">Gross realized losses on sale of investments</a></td>
<td class="nump">$ 17,000<span></span>
</td>
<td class="nump">$ 43,000<span></span>
</td>
<td class="nump">$ 111,000<span></span>
</td>
<td class="nump">$ 79,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesGrossRealizedGains">
<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>This item represents the gross profit realized on the sale of debt or equity securities categorized neither as held-to-maturity nor trading securities.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27357-111563<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;">us-gaap_AvailableForSaleSecuritiesGrossRealizedGains</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses">
<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>This item represents the gross loss realized on the sale of debt or equity securities categorized neither as held-to-maturity nor trading securities.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27357-111563<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;">us-gaap_AvailableForSaleSecuritiesGrossRealizedLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAbstract">
<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 );">- References</a><div><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;">us-gaap_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<FILENAME>R38.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6772869424">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Dec. 31, 2016</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_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Cash', window );">Cash</a></td>
<td class="nump">$ 104,654<span></span>
</td>
<td class="nump">$ 97,951<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MoneyMarketFundsAtCarryingValue', window );">Money market instruments</a></td>
<td class="nump">2,717<span></span>
</td>
<td class="nump">8,631<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">107,371<span></span>
</td>
<td class="nump">106,582<span></span>
</td>
<td class="nump">$ 111,349<span></span>
</td>
<td class="nump">$ 79,641<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_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Short-term investments</a></td>
<td class="nump">420,016<span></span>
</td>
<td class="nump">297,961<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermInvestments', window );">Long-term investments</a></td>
<td class="nump">281,929<span></span>
</td>
<td class="nump">423,441<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments', window );">Total</a></td>
<td class="nump">809,316<span></span>
</td>
<td class="nump">827,984<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury Bills</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Short-term investments</a></td>
<td class="nump">193,347<span></span>
</td>
<td class="nump">150,371<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent', window );">Long-term investments</a></td>
<td class="nump">32,711<span></span>
</td>
<td class="nump">23,459<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Short-term investments</a></td>
<td class="nump">138,099<span></span>
</td>
<td class="nump">47,395<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent', window );">Long-term investments</a></td>
<td class="nump">176,007<span></span>
</td>
<td class="nump">296,014<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-Backed Securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Short-term investments</a></td>
<td class="nump">71,438<span></span>
</td>
<td class="nump">59,203<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent', window );">Long-term investments</a></td>
<td class="nump">60,111<span></span>
</td>
<td class="nump">71,727<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtMember', window );">Sovereign Debt [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Short-term investments</a></td>
<td class="nump">8,119<span></span>
</td>
<td class="nump">21,579<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent', window );">Long-term investments</a></td>
<td class="nump">6,318<span></span>
</td>
<td class="nump">13,147<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember', window );">Agency Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Short-term investments</a></td>
<td class="nump">2,969<span></span>
</td>
<td class="nump">10,608<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent', window );">Long-term investments</a></td>
<td class="nump">5,940<span></span>
</td>
<td class="nump">14,890<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember', window );">Municipal Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Short-term investments</a></td>
<td class="nump">6,044<span></span>
</td>
<td class="nump">8,805<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent', window );">Long-term investments</a></td>
<td class="nump">$ 842<span></span>
</td>
<td class="nump">$ 4,204<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments">
<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>Cash, cash equivalents, short term and long term investments.</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;">cgnx_CashCashEquivalentsShortTermAndLongTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of investments in debt securities classified as available-for-sale, expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 25<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=75030427&amp;loc=d3e22054-111558<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=82896770&amp;loc=d3e26626-111562<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;">us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Total of debt securities categorized neither as held-to-maturity nor trading which are intended be sold or mature more than one year from the balance sheet date or operating cycle, if longer.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 25<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=75030427&amp;loc=d3e22054-111558<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=82896770&amp;loc=d3e26626-111562<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;">us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Cash">
<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>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Excludes cash and cash equivalents within disposal group and discontinued operation.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_Cash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3044-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.12)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_LongTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MoneyMarketFundsAtCarryingValue">
<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>Investment in short-term money-market instruments (such as commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and so forth) which are highly liquid (that is, readily convertible to known amounts of cash) and so near their maturity that they present an insignificant risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify as cash equivalents by definition. Original maturity means an original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_MoneyMarketFundsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>R39.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6773895136">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Detail)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Sep. 30, 2018 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">$ 702,797<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">608<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(1,460)<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_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">701,945<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember', window );">Agency Bonds | Short-Term Investments</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">2,969<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">2,969<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember', window );">Agency Bonds | Long-Term Investments</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">5,930<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">10<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">5,940<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury Bills</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(298)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury Bills | Short-Term Investments</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_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">193,631<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(284)<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_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">193,347<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury Bills | Long-Term Investments</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_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">32,718<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">7<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(14)<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_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">32,711<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate Bonds</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_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(683)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate Bonds | Short-Term Investments</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">138,383<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">56<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(340)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">138,099<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate Bonds | Long-Term Investments</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">175,881<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">469<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(343)<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_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">176,007<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-Backed Securities</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(407)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-Backed Securities | Short-Term Investments</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_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">71,646<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(209)<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_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">71,438<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-Backed Securities | Long-Term Investments</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_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">60,276<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">33<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(198)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">60,111<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign Bonds</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_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(53)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign Bonds | Short-Term Investments</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">8,172<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(53)<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_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">8,119<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign Bonds | Long-Term Investments</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">6,286<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">32<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">6,318<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember', window );">Municipal Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(19)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember', window );">Municipal Bonds | Short-Term Investments</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_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">6,050<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(6)<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_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">6,044<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember', window );">Municipal Bonds | Long-Term Investments</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_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">855<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_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross unrealized gains</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross unrealized losses</a></td>
<td class="num">(13)<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_us-gaap_AvailableForSaleSecurities', window );">Fair value</a></td>
<td class="nump">$ 842<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount before tax of unrealized gain in accumulated other comprehensive income (AOCI) on investments in debt securities classified as available-for-sale.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27161-111563<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;">us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount before tax of unrealized loss in accumulated other comprehensive income (AOCI) on investments in debt securities classified as available-for-sale.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27161-111563<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;">us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>This item represents the cost of debt securities, which are categorized neither as held-to-maturity nor trading, net of adjustments including accretion, amortization, collection of cash, previous other-than-temporary impairments recognized in earnings (less any cumulative-effect adjustments recognized, as defined), and fair value hedge accounting adjustments, if any.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27161-111563<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecurities">
<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>Amount of investment in debt and equity securities categorized neither as held-to-maturity nor trading.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 25<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=75030427&amp;loc=d3e22054-111558<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (aa)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27232-111563<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=82896770&amp;loc=d3e26610-111562<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;">us-gaap_AvailableForSaleSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=us-gaap_ShortTermInvestmentsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=us-gaap_ShortTermInvestmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=cgnx_LongTermInvestmentsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=cgnx_LongTermInvestmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R40.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6772362464">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Detail)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Sep. 30, 2018 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue', window );">Fair value, less than 12 months</a></td>
<td class="nump">$ 317,195<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss', window );">Unrealized losses, less than 12 months</a></td>
<td class="num">(779)<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue', window );">Fair value, 12 months or greater</a></td>
<td class="nump">149,642<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss', window );">Unrealized losses, 12 months or greater</a></td>
<td class="num">(681)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue', window );">Total fair value</a></td>
<td class="nump">466,837<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Total unrealized losses</a></td>
<td class="num">(1,460)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury Bills</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue', window );">Fair value, less than 12 months</a></td>
<td class="nump">137,108<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss', window );">Unrealized losses, less than 12 months</a></td>
<td class="num">(174)<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue', window );">Fair value, 12 months or greater</a></td>
<td class="nump">63,030<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss', window );">Unrealized losses, 12 months or greater</a></td>
<td class="num">(124)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue', window );">Total fair value</a></td>
<td class="nump">200,138<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Total unrealized losses</a></td>
<td class="num">(298)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue', window );">Fair value, less than 12 months</a></td>
<td class="nump">116,028<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss', window );">Unrealized losses, less than 12 months</a></td>
<td class="num">(386)<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue', window );">Fair value, 12 months or greater</a></td>
<td class="nump">42,922<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss', window );">Unrealized losses, 12 months or greater</a></td>
<td class="num">(297)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue', window );">Total fair value</a></td>
<td class="nump">158,950<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Total unrealized losses</a></td>
<td class="num">(683)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-Backed Securities</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue', window );">Fair value, less than 12 months</a></td>
<td class="nump">57,678<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss', window );">Unrealized losses, less than 12 months</a></td>
<td class="num">(207)<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue', window );">Fair value, 12 months or greater</a></td>
<td class="nump">38,256<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss', window );">Unrealized losses, 12 months or greater</a></td>
<td class="num">(200)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue', window );">Total fair value</a></td>
<td class="nump">95,934<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Total unrealized losses</a></td>
<td class="num">(407)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue', window );">Fair value, less than 12 months</a></td>
<td class="nump">3,527<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss', window );">Unrealized losses, less than 12 months</a></td>
<td class="num">(6)<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue', window );">Fair value, 12 months or greater</a></td>
<td class="nump">4,592<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss', window );">Unrealized losses, 12 months or greater</a></td>
<td class="num">(47)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue', window );">Total fair value</a></td>
<td class="nump">8,119<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Total unrealized losses</a></td>
<td class="num">(53)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember', window );">Municipal Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue', window );">Fair value, less than 12 months</a></td>
<td class="nump">2,854<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss', window );">Unrealized losses, less than 12 months</a></td>
<td class="num">(6)<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue', window );">Fair value, 12 months or greater</a></td>
<td class="nump">842<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_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss', window );">Unrealized losses, 12 months or greater</a></td>
<td class="num">(13)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue', window );">Total fair value</a></td>
<td class="nump">3,696<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Total unrealized losses</a></td>
<td class="num">$ (19)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax">
<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>Amount before tax of unrealized loss in accumulated other comprehensive income (AOCI) on investments in debt securities classified as available-for-sale.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27161-111563<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;">us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss">
<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>Amount of accumulated unrealized loss on investments in debt and equity securities classified as available-for-sale that have been in a continuous loss position for twelve months or longer.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27290-111563<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27337-111563<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;">us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue">
<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>This item represents the aggregate fair value of investments in debt and equity securities in an unrealized loss position which are categorized neither as held-to-maturity nor trading securities.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27290-111563<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;">us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss">
<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>Amount of accumulated unrealized loss on investments in debt and equity securities classified as available-for-sale that have been in a continuous loss position for less than twelve months.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27290-111563<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27337-111563<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;">us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue">
<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>This item represents the aggregate fair value of investments in debt and equity securities categorized neither as held-to-maturity nor trading securities that have been in a continuous unrealized loss position for less than twelve months.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27337-111563<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27290-111563<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;">us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionLessThanTwelveMonthsFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue">
<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>This item represents the aggregate fair value of investments in debt and equity securities categorized neither as held-to-maturity nor trading securities that have been in a continuous unrealized loss position for twelve months or longer.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27290-111563<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27337-111563<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;">us-gaap_AvailableForSaleSecuritiesContinuousUnrealizedLossPositionTwelveMonthsOrLongerFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>R41.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6760070128">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Detail)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Sep. 30, 2018 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">1 year or less</a></td>
<td class="nump">$ 420,016<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue', window );">1-2 years</a></td>
<td class="nump">151,316<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue', window );">2-3 years</a></td>
<td class="nump">74,115<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue', window );">3-4 years</a></td>
<td class="nump">40,471<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue', window );">4-5 years</a></td>
<td class="nump">6,572<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue', window );">5-7 years</a></td>
<td class="nump">9,455<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair value</a></td>
<td class="nump">701,945<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate Bonds</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_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">1 year or less</a></td>
<td class="nump">138,099<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue', window );">1-2 years</a></td>
<td class="nump">80,605<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue', window );">2-3 years</a></td>
<td class="nump">68,684<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue', window );">3-4 years</a></td>
<td class="nump">22,429<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue', window );">4-5 years</a></td>
<td class="nump">1,434<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue', window );">5-7 years</a></td>
<td class="nump">2,855<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair value</a></td>
<td class="nump">314,106<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury Bills</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">1 year or less</a></td>
<td class="nump">193,347<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue', window );">1-2 years</a></td>
<td class="nump">32,711<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue', window );">2-3 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue', window );">3-4 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue', window );">4-5 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue', window );">5-7 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair value</a></td>
<td class="nump">226,058<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-Backed Securities</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_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">1 year or less</a></td>
<td class="nump">71,438<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue', window );">1-2 years</a></td>
<td class="nump">30,840<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue', window );">2-3 years</a></td>
<td class="nump">5,431<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue', window );">3-4 years</a></td>
<td class="nump">12,102<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue', window );">4-5 years</a></td>
<td class="nump">5,138<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue', window );">5-7 years</a></td>
<td class="nump">6,600<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair value</a></td>
<td class="nump">131,549<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">1 year or less</a></td>
<td class="nump">8,119<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue', window );">1-2 years</a></td>
<td class="nump">6,318<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue', window );">2-3 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue', window );">3-4 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue', window );">4-5 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue', window );">5-7 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair value</a></td>
<td class="nump">14,437<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember', window );">Agency Bonds</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_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">1 year or less</a></td>
<td class="nump">2,969<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue', window );">1-2 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue', window );">2-3 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue', window );">3-4 years</a></td>
<td class="nump">5,940<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue', window );">4-5 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue', window );">5-7 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair value</a></td>
<td class="nump">8,909<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember', window );">Municipal Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-sale Securities [Line Items]</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_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">1 year or less</a></td>
<td class="nump">6,044<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue', window );">1-2 years</a></td>
<td class="nump">842<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue', window );">2-3 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue', window );">3-4 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue', window );">4-5 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue', window );">5-7 years</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair value</a></td>
<td class="nump">$ 6,886<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue">
<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>Available For Sale Securities Debt Maturities After Five Years Before Seven Years Fair Value</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;">cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYearsBeforeSevenYearsFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Available-for-sale securities, debt maturities after fourth year but before fifth year, fair value.</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;">cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>This item represents the fair value of debt securities which are expected to mature within one year of the balance sheet date and which are categorized neither as held-to-maturity nor trading securities.</p></div>
<a href="javascript:void(0);" onclick="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;">cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Available-for-sale securities, debt maturities after third year but before fourth year, fair value.</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;">cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Available-for-sale securities, debt maturities after second year but before third year, fair value.</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;">cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Fair value of available-for-sale debt securities maturing in the next fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27198-111563<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 320<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=75019621&amp;loc=d3e62586-112803<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27161-111563<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;">us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of debt securities categorized neither as held-to-maturity nor trading.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 25<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=75030427&amp;loc=d3e22054-111558<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=82896770&amp;loc=d3e26610-111562<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -URI http://asc.fasb.org/extlink&amp;oid=82897076&amp;loc=d3e27161-111563<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 320<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)-(g)<br> -URI http://asc.fasb.org/extlink&amp;oid=75019621&amp;loc=d3e62557-112803<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;">us-gaap_AvailableForSaleSecuritiesDebtSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_CorporateBondSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_USTreasurySecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_AssetBackedSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_SovereignDebtSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=cgnx_AgencyBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis=us-gaap_MunicipalBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R42.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6752429392">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories - Schedule of Inventories (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</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_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">$ 46,660<span></span>
</td>
<td class="nump">$ 33,927<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_us-gaap_InventoryWorkInProcessNetOfReserves', window );">Work-in-process</a></td>
<td class="nump">4,071<span></span>
</td>
<td class="nump">2,114<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_us-gaap_InventoryFinishedGoodsNetOfReserves', window );">Finished goods</a></td>
<td class="nump">43,304<span></span>
</td>
<td class="nump">31,882<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">$ 94,035<span></span>
</td>
<td class="nump">$ 67,923<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<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;">us-gaap_InventoryFinishedGoodsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=68049868&amp;loc=d3e3927-108312<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<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;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterialsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<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;">us-gaap_InventoryRawMaterialsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcessNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<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;">us-gaap_InventoryWorkInProcessNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>R43.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6759523664">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Intangible Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</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_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">$ 60,724<span></span>
</td>
<td class="nump">$ 60,724<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_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">49,842<span></span>
</td>
<td class="nump">47,535<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">10,882<span></span>
</td>
<td class="nump">13,189<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_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear', window );">Remainder of fiscal 2018</a></td>
<td class="nump">769<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2019</a></td>
<td class="nump">2,701<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2020</a></td>
<td class="nump">2,185<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2021</a></td>
<td class="nump">2,017<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2022</a></td>
<td class="nump">1,691<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">2023</a></td>
<td class="nump">989<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">Thereafter</a></td>
<td class="nump">530<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">10,882<span></span>
</td>
<td class="nump">13,189<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DistributionRightsMember', window );">Distribution networks</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">38,060<span></span>
</td>
<td class="nump">38,060<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_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">38,060<span></span>
</td>
<td class="nump">38,060<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember', window );">Completed technologies</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">13,687<span></span>
</td>
<td class="nump">13,687<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_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">6,010<span></span>
</td>
<td class="nump">4,181<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">7,677<span></span>
</td>
<td class="nump">9,506<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_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">7,677<span></span>
</td>
<td class="nump">9,506<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cgnx_CustomerContractsAndRelationshipsMember', window );">Customer relationships</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">8,607<span></span>
</td>
<td class="nump">8,607<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_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">5,587<span></span>
</td>
<td class="nump">5,202<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">3,020<span></span>
</td>
<td class="nump">3,405<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">3,020<span></span>
</td>
<td class="nump">3,405<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OtherIntangibleAssetsMember', window );">Non-compete agreements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">370<span></span>
</td>
<td class="nump">370<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_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">185<span></span>
</td>
<td class="nump">92<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">185<span></span>
</td>
<td class="nump">278<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_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">$ 185<span></span>
</td>
<td class="nump">$ 278<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the next fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the remainder of the fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DistributionRightsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DistributionRightsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cgnx_CustomerContractsAndRelationshipsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cgnx_CustomerContractsAndRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OtherIntangibleAssetsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OtherIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R44.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6911679344">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty Obligations - Changes in Warranty Obligations (Detail)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2018 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MovementInStandardProductWarrantyAccrualRollForward', window );"><strong>Movement in Standard Product Warranty Accrual [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_ProductWarrantyAccrual', window );">Beginning balance</a></td>
<td class="nump">$ 4,701<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_us-gaap_ProductWarrantyAccrualWarrantiesIssued', window );">Provisions for warranties issued during the period</a></td>
<td class="nump">3,376<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_us-gaap_ProductWarrantyAccrualPayments', window );">Fulfillment of warranty obligations</a></td>
<td class="num">(3,223)<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_us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss', window );">Foreign exchange rate changes</a></td>
<td class="num">(117)<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_us-gaap_ProductWarrantyAccrual', window );">Ending balance</a></td>
<td class="nump">$ 4,737<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MovementInStandardProductWarrantyAccrualRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_MovementInStandardProductWarrantyAccrualRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.15(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<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;">us-gaap_ProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrualPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph ((c)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<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;">us-gaap_ProductWarrantyAccrualPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrualWarrantiesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of increase in the standard and extended product warranty accrual from warranties issued.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph ((c)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<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;">us-gaap_ProductWarrantyAccrualWarrantiesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss">
<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>Amount of foreign currency translation gain (loss) which decreases (increases) the standard and extended product warranty accrual.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<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;">us-gaap_StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R45.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6760019360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Instruments (Detail)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2018 </div>
<div>Category</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_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</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_us-gaap_DerivativeNumberOfInstrumentsHeld', window );">Number of instruments held</a></td>
<td class="nump">2<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember', window );">Designated as Hedging Instrument</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_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1', window );">Maximum length of time hedged in cash flow hedge</a></td>
<td class="text">18 months<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Not Designated as Hedging Instrument</a></td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</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_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1', window );">Remaining maturity of foreign currency derivatives (up to)</a></td>
<td class="text">45 days<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeNumberOfInstrumentsHeld">
<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 number of derivative instruments of a particular group held by the entity.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5580258-113959<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5579245-113959<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;">us-gaap_DerivativeNumberOfInstrumentsHeld</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1">
<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>Maximum length of time over which the entity is hedging its exposure to the variability in future cash flows for forecasted transactions, excluding those forecasted transactions related to the payment of variable interest on existing financial instruments, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=35736893&amp;loc=d3e80748-113994<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;">us-gaap_MaximumLengthOfTimeHedgedInCashFlowHedge1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1">
<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>Maximum amount of time remaining before foreign currency exchange rate derivatives mature or expire, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>R46.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6773819632">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Derivative Instruments - Outstanding Forward Contracts Table (Detail) - Not Designated as Hedging Instrument<br> &#8364; in Thousands, &#8361; in Thousands, &#165; in Thousands, $ in Thousands, $ in Thousands, $ in Thousands, $ in Thousands</strong></div></th>
<th class="th">
<div>Sep. 30, 2018 </div>
<div>CAD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2018 </div>
<div>SGD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2018 </div>
<div>JPY (&#165;)</div>
</th>
<th class="th">
<div>Sep. 30, 2018 </div>
<div>KRW (&#8361;)</div>
</th>
<th class="th">
<div>Sep. 30, 2018 </div>
<div>TWD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2018 </div>
<div>EUR (&#8364;)</div>
</th>
<th class="th">
<div>Sep. 30, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </div>
<div>CAD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </div>
<div>SGD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </div>
<div>JPY (&#165;)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </div>
<div>KRW (&#8361;)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </div>
<div>TWD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </div>
<div>EUR (&#8364;)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Euro Member Countries, Euro</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#8364; 19,500<span></span>
</td>
<td class="nump">$ 22,602<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#8364; 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Japanese Yen</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#165; 455,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,018<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#165; 455,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,049<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">United Kingdom, Pounds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,742<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,650<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,232<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Hungary, Forint</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#165; 700,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,513<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#165; 545,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,110<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Korean Won</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#8361; 2,050,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,847<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#8361; 1,825,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,708<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Taiwanese Dollar</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 49,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,615<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 37,725<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,278<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Canada, Dollars</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="nump">$ 800<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">616<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Singapore Dollar</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 760<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">557<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Switzerland, Francs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,365<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,401<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeAssetNotionalAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Nominal or face amount used to calculate payments on the derivative asset.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5579245-113959<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5580258-113959<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;">us-gaap_DerivativeAssetNotionalAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_DerivativeLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrencyAxis=currency_EUR">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrencyAxis=currency_EUR</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrencyAxis=currency_JPY">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrencyAxis=currency_JPY</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrencyAxis=currency_GBP">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrencyAxis=currency_GBP</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrencyAxis=currency_HUF">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrencyAxis=currency_HUF</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrencyAxis=currency_KRW">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrencyAxis=currency_KRW</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrencyAxis=currency_TWD">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrencyAxis=currency_TWD</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrencyAxis=currency_CAD">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrencyAxis=currency_CAD</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrencyAxis=currency_SGD">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrencyAxis=currency_SGD</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrencyAxis=currency_CHF">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrencyAxis=currency_CHF</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>R47.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6757579584">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</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_us-gaap_DerivativesFairValueLineItems', window );"><strong>Derivatives, Fair Value [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Derivative asset</a></td>
<td class="nump">$ 21<span></span>
</td>
<td class="nump">$ 16<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_us-gaap_DerivativeLiabilities', window );">Derivative liability</a></td>
<td class="nump">91<span></span>
</td>
<td class="nump">13<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Not Designated as Hedging Instrument | Prepaid Expenses and Other Current Assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativesFairValueLineItems', window );"><strong>Derivatives, Fair Value [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Derivative asset</a></td>
<td class="nump">21<span></span>
</td>
<td class="nump">16<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Not Designated as Hedging Instrument | Accrued Expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativesFairValueLineItems', window );"><strong>Derivatives, Fair Value [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeLiabilities', window );">Derivative liability</a></td>
<td class="nump">$ 91<span></span>
</td>
<td class="nump">$ 13<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Fair value, after the effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets not subject to a master netting arrangement and not elected to be offset.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=51824906&amp;loc=SL20225862-175312<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=6945355&amp;loc=d3e41271-113958<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77997519&amp;loc=d3e13433-108611<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=6945355&amp;loc=d3e41228-113958<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=77997519&amp;loc=d3e13495-108611<br><br>Reference 6: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=82849420&amp;loc=SL20226008-175313<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;">us-gaap_DerivativeAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Fair value, after the effects of master netting arrangements, of a financial liability or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes liabilities not subject to a master netting arrangement and not elected to be offset.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=82849420&amp;loc=SL20226008-175313<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=77997519&amp;loc=d3e13495-108611<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=51824906&amp;loc=SL20225862-175312<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77997519&amp;loc=d3e13433-108611<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=6945355&amp;loc=d3e41271-113958<br><br>Reference 6: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=6945355&amp;loc=d3e41228-113958<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;">us-gaap_DerivativeLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativesFairValueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_DerivativesFairValueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=cgnx_AccruedExpensesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=cgnx_AccruedExpensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<FILENAME>R48.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6705103168">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Derivative Instruments - Offsetting Assets (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</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_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeFairValueOfDerivativeAsset', window );">Gross amounts of recognized assets</a></td>
<td class="nump">$ 21<span></span>
</td>
<td class="nump">$ 16<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_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset', window );">Gross amounts offset</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Net amount of assets presented</a></td>
<td class="nump">21<span></span>
</td>
<td class="nump">16<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_us-gaap_DerivativeFairValueOfDerivativeLiability', window );">Gross amounts of recognized liabilities</a></td>
<td class="nump">91<span></span>
</td>
<td class="nump">13<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_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset', window );">Gross amounts offset</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeLiabilities', window );">Net amount of liabilities presented</a></td>
<td class="nump">$ 91<span></span>
</td>
<td class="nump">$ 13<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of obligation to return cash collateral under master netting arrangements offset against derivative assets.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=6945355&amp;loc=d3e41228-113958<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=51824906&amp;loc=SL20225862-175312<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;">us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Fair value, after the effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets not subject to a master netting arrangement and not elected to be offset.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=51824906&amp;loc=SL20225862-175312<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=6945355&amp;loc=d3e41271-113958<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77997519&amp;loc=d3e13433-108611<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=6945355&amp;loc=d3e41228-113958<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=77997519&amp;loc=d3e13495-108611<br><br>Reference 6: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=82849420&amp;loc=SL20226008-175313<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;">us-gaap_DerivativeAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeFairValueOfDerivativeAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Fair value, before effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets elected not to be offset. Excludes assets not subject to a master netting arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=51824906&amp;loc=SL20225862-175312<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4B<br> -Subparagraph (a),(c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5624163-113959<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 55<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=82849420&amp;loc=SL20226000-175313<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 860<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (c)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=82924980&amp;loc=SL51823488-111719<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;">us-gaap_DerivativeFairValueOfDerivativeAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeFairValueOfDerivativeLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Fair value, before effects of master netting arrangements, of a financial liability or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes liabilities elected not to be offset. Excludes liabilities not subject to a master netting arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 860<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (c)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=82924980&amp;loc=SL51823488-111719<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=51824906&amp;loc=SL20225862-175312<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4B<br> -Subparagraph (a),(c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5624163-113959<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 55<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=82849420&amp;loc=SL20226000-175313<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;">us-gaap_DerivativeFairValueOfDerivativeLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Fair value, after the effects of master netting arrangements, of a financial liability or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes liabilities not subject to a master netting arrangement and not elected to be offset.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=82849420&amp;loc=SL20226008-175313<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=77997519&amp;loc=d3e13495-108611<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=51824906&amp;loc=SL20225862-175312<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77997519&amp;loc=d3e13433-108611<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=6945355&amp;loc=d3e41271-113958<br><br>Reference 6: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=6945355&amp;loc=d3e41228-113958<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;">us-gaap_DerivativeLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of right to receive cash collateral under master netting arrangements offset against derivative liabilities.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=51824906&amp;loc=SL20225862-175312<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=6945355&amp;loc=d3e41228-113958<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;">us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>R49.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6771404704">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Instruments - Derivative Instruments, Gain (Loss) (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax', window );">Total gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 56<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 21<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember', window );">Designated as Hedging Instrument | Accumulated Other Comprehensive Income (Loss), Net of Tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet', window );">Gains (losses) recorded in shareholders' equity (effective portion)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember', window );">Designated as Hedging Instrument | Product Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet', window );">Gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations (effective portion)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">56<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">10<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember', window );">Designated as Hedging Instrument | Research, Development, and Engineering Expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet', window );">Gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations (effective portion)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">3<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember', window );">Designated as Hedging Instrument | Selling, General, and Administrative Expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet', window );">Gains (losses) reclassified from accumulated other comprehensive income (loss) into current operations (effective portion)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">8<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember', window );">Designated as Hedging Instrument | Foreign Currency Gain (Loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet', window );">Derivative Instruments, Gain (Loss) Recognized in Income, Ineffective Portion and Amount Excluded from Effectiveness Testing, Net</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Not Designated as Hedging Instrument | Foreign Currency Gain (Loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeGainLossOnDerivativeNet', window );">Gains (losses) recognized in current operations</a></td>
<td class="nump">$ 299<span></span>
</td>
<td class="nump">$ 43<span></span>
</td>
<td class="num">$ (366)<span></span>
</td>
<td class="nump">$ 139<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeGainLossOnDerivativeNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of increase (decrease) in the fair value of derivatives recognized in the income statement.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5618551-113959<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (a),(c),(d),(e)<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5624171-113959<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;">us-gaap_DerivativeGainLossOnDerivativeNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsGainLossLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_DerivativeInstrumentsGainLossLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet">
<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 effective portion of net gain (loss) reclassified from accumulated other comprehensive income into income on derivative instruments designated and qualifying as hedging instruments.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5624171-113959<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5624177-113959<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;">us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet">
<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 portion of gains and losses (net) on derivative instruments designated and qualifying as hedging instruments representing (a) the amount of the hedge ineffectiveness and (b) the amount, if any, excluded from the assessment of hedge effectiveness.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5624171-113959<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 25<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1),(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=6886632&amp;loc=d3e76258-113986<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;">us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet">
<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 effective portion of gains and losses (net) on derivative instruments designated and qualifying as hedging instruments that was recognized in other comprehensive income during the current period.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=SL5624171-113959<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;">us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax">
<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>Amount after tax of reclassification adjustment from accumulated other comprehensive income of accumulated gain (loss) realized from derivative instruments designated and qualifying as the effective portion of cash flow hedges and an entity's share of an equity investee's deferred hedging gain (loss).</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e689-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph c<br> -URI http://asc.fasb.org/extlink&amp;oid=84234895&amp;loc=d3e41638-113959<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=84228862&amp;loc=d3e637-108580<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;">us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CashFlowHedgingMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_CashFlowHedgingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SalesRevenueGoodsNetMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_SalesRevenueGoodsNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ForeignCurrencyGainLossMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_ForeignCurrencyGainLossMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<FILENAME>R50.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6772673536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Impact on Statement of Operations (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems', window );"><strong>New Accounting Pronouncements or Change in Accounting Principle [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalesRevenueNet', window );">Revenue</a></td>
<td class="nump">$ 232,221<span></span>
</td>
<td class="nump">$ 266,042<span></span>
</td>
<td class="nump">$ 613,052<span></span>
</td>
<td class="nump">$ 583,161<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_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of revenue</a></td>
<td class="nump">58,860<span></span>
</td>
<td class="nump">68,061<span></span>
</td>
<td class="nump">153,227<span></span>
</td>
<td class="nump">142,757<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_us-gaap_GrossProfit', window );">Gross margin</a></td>
<td class="nump">173,361<span></span>
</td>
<td class="nump">197,981<span></span>
</td>
<td class="nump">459,825<span></span>
</td>
<td class="nump">440,404<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_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">77,844<span></span>
</td>
<td class="nump">110,849<span></span>
</td>
<td class="nump">175,895<span></span>
</td>
<td class="nump">208,086<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_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments', window );">Income before income tax expense</a></td>
<td class="nump">81,273<span></span>
</td>
<td class="nump">112,752<span></span>
</td>
<td class="nump">185,825<span></span>
</td>
<td class="nump">213,793<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_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense (benefit)</a></td>
<td class="nump">837<span></span>
</td>
<td class="nump">10,259<span></span>
</td>
<td class="nump">11,976<span></span>
</td>
<td class="nump">9,334<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_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 80,436<span></span>
</td>
<td class="nump">$ 102,493<span></span>
</td>
<td class="nump">$ 173,849<span></span>
</td>
<td class="nump">$ 204,459<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_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare', window );">Basic (usd per share)</a></td>
<td class="nump">$ 0.47<span></span>
</td>
<td class="nump">$ 0.59<span></span>
</td>
<td class="nump">$ 1.01<span></span>
</td>
<td class="nump">$ 1.18<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_us-gaap_EarningsPerShareDiluted', window );">Diluted (usd per share)</a></td>
<td class="nump">$ 0.45<span></span>
</td>
<td class="nump">$ 0.57<span></span>
</td>
<td class="nump">$ 0.98<span></span>
</td>
<td class="nump">$ 1.14<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementScenarioAxis=us-gaap_ScenarioPreviouslyReportedMember', window );">As previously reported</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems', window );"><strong>New Accounting Pronouncements or Change in Accounting Principle [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalesRevenueNet', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 259,739<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 567,585<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_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">62,360<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">128,056<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross margin</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">197,379<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">439,529<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_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">110,247<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">207,211<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_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments', window );">Income before income tax expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">112,150<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">212,918<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_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense (benefit)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,802<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,843<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_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 102,348<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 204,075<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_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare', window );">Basic (usd per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.59<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.18<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_us-gaap_EarningsPerShareDiluted', window );">Diluted (usd per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.57<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.14<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201409Member', window );">Accounting Standards Update 2014-09 | Adjustment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems', window );"><strong>New Accounting Pronouncements or Change in Accounting Principle [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalesRevenueNet', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 6,303<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,576<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_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,701<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14,701<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_us-gaap_GrossProfit', window );">Gross margin</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">602<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">875<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_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">602<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">875<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_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments', window );">Income before income tax expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">602<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">875<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_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense (benefit)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">457<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">491<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_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 145<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 384<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_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare', window );">Basic (usd per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.00<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.00<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_us-gaap_EarningsPerShareDiluted', window );">Diluted (usd per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.00<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.00<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<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 aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<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 amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<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;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<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>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments">
<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>Amount of income (loss) from continuing operations before deduction of income tax expense (benefit) and income (loss) attributable to noncontrolling interest, and addition of income (loss) from equity method investments.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(h)(1)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<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;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare">
<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 amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-03(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20187-122688<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 6: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br><br>Reference 7: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1252-109256<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;">us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<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>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a),(b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<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;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<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 portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<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 net result for the period of deducting operating expenses from operating revenues.</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;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SalesRevenueNet">
<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>Total revenue from sale of goods and services rendered during the reporting period, in the normal course of business, reduced by sales returns and allowances, and sales discounts.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<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;">us-gaap_SalesRevenueNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementScenarioAxis=us-gaap_ScenarioPreviouslyReportedMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementScenarioAxis=us-gaap_ScenarioPreviouslyReportedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201409Member">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201409Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementScenarioAxis=us-gaap_RestatementAdjustmentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementScenarioAxis=us-gaap_RestatementAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>R51.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6772276720">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue Recognition - Impact on Balance Sheet (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</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_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems', window );"><strong>New Accounting Pronouncements or Change in Accounting Principle [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">$ 27,687<span></span>
</td>
<td class="nump">$ 30,683<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_us-gaap_AccruedIncomeTaxesCurrent', window );">Accrued income taxes</a></td>
<td class="nump">8,974<span></span>
</td>
<td class="nump">11,503<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_us-gaap_DeferredRevenueAndCreditsCurrent', window );">Deferred revenue and customer deposits</a></td>
<td class="nump">13,252<span></span>
</td>
<td class="nump">9,420<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_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">$ 670,935<span></span>
</td>
<td class="nump">668,587<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementScenarioAxis=us-gaap_ScenarioPreviouslyReportedMember', window );">As previously reported</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems', window );"><strong>New Accounting Pronouncements or Change in Accounting Principle [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">30,800<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_us-gaap_AccruedIncomeTaxesCurrent', window );">Accrued income taxes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,391<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_us-gaap_DeferredRevenueAndCreditsCurrent', window );">Deferred revenue and customer deposits</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,969<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_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">668,267<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementScenarioAxis=us-gaap_RestatementAdjustmentMember', window );">Adjustment | Accounting Standards Update 2014-09</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems', window );"><strong>New Accounting Pronouncements or Change in Accounting Principle [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(117)<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_us-gaap_AccruedIncomeTaxesCurrent', window );">Accrued income taxes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">112<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_us-gaap_DeferredRevenueAndCreditsCurrent', window );">Deferred revenue and customer deposits</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(549)<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_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 320<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedIncomeTaxesCurrent">
<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>Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(b)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<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;">us-gaap_AccruedIncomeTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenueAndCreditsCurrent">
<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>Total carrying amount of consideration received or receivable as of the balance sheet date on potential earnings that were not recognized as revenue or other forms of income in conformity with GAAP, and which are expected to be recognized as such within one year or the normal operating cycle, if longer.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.3(b).Q1(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.3(b).Q2)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.3(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 13.A.Q4)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.4(a).Q1)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 6: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.3(c).Q3)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 7: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 8: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<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;">us-gaap_DeferredRevenueAndCreditsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent">
<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>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<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;">us-gaap_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<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 cumulative amount of the reporting entity's undistributed earnings or deficit.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementScenarioAxis=us-gaap_ScenarioPreviouslyReportedMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementScenarioAxis=us-gaap_ScenarioPreviouslyReportedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementScenarioAxis=us-gaap_RestatementAdjustmentMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementScenarioAxis=us-gaap_RestatementAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201409Member">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201409Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<FILENAME>R52.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6759973024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Revenue Disaggregated by Geography (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 232,221<span></span>
</td>
<td class="nump">$ 266,042<span></span>
</td>
<td class="nump">$ 613,052<span></span>
</td>
<td class="nump">$ 583,161<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementGeographicalAxis=us-gaap_EuropeMember', window );">Europe</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">115,592<span></span>
</td>
<td class="nump">146,230<span></span>
</td>
<td class="nump">242,161<span></span>
</td>
<td class="nump">252,386<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementGeographicalAxis=us-gaap_AmericasMember', window );">Americas</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">58,830<span></span>
</td>
<td class="nump">54,902<span></span>
</td>
<td class="nump">189,859<span></span>
</td>
<td class="nump">155,977<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementGeographicalAxis=country_CN', window );">Greater China</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">32,796<span></span>
</td>
<td class="nump">35,546<span></span>
</td>
<td class="nump">101,130<span></span>
</td>
<td class="nump">84,764<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementGeographicalAxis=cgnx_AsiaExcludingChinaMember', window );">Other Asia</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 25,003<span></span>
</td>
<td class="nump">$ 29,364<span></span>
</td>
<td class="nump">$ 79,902<span></span>
</td>
<td class="nump">$ 90,034<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 32<br> -Paragraph 2A<br> -URI http://asc.fasb.org/extlink&amp;oid=82859839&amp;loc=SL82860478-203043<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=82913847&amp;loc=SL49130543-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=82913847&amp;loc=SL49130539-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=82913847&amp;loc=SL49130545-203045<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;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementGeographicalAxis=us-gaap_EuropeMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementGeographicalAxis=us-gaap_EuropeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementGeographicalAxis=us-gaap_AmericasMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementGeographicalAxis=us-gaap_AmericasMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementGeographicalAxis=country_CN">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementGeographicalAxis=country_CN</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementGeographicalAxis=cgnx_AsiaExcludingChinaMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementGeographicalAxis=cgnx_AsiaExcludingChinaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<FILENAME>R53.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6759818688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Revenue Disaggregated by Products and Services (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 232,221<span></span>
</td>
<td class="nump">$ 266,042<span></span>
</td>
<td class="nump">$ 613,052<span></span>
</td>
<td class="nump">$ 583,161<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductOrServiceAxis=cgnx_StandardProductsandServicesMember', window );">Standard Products and Services</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">150,993<span></span>
</td>
<td class="nump">159,981<span></span>
</td>
<td class="nump">493,019<span></span>
</td>
<td class="nump">453,464<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductOrServiceAxis=cgnx_ApplicationSpecificCustomerSolutionsMember', window );">Application-Specific Customer Solutions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 81,228<span></span>
</td>
<td class="nump">$ 106,061<span></span>
</td>
<td class="nump">$ 120,033<span></span>
</td>
<td class="nump">$ 129,697<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 32<br> -Paragraph 2A<br> -URI http://asc.fasb.org/extlink&amp;oid=82859839&amp;loc=SL82860478-203043<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=82913847&amp;loc=SL49130543-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=82913847&amp;loc=SL49130539-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=82913847&amp;loc=SL49130545-203045<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;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductOrServiceAxis=cgnx_StandardProductsandServicesMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductOrServiceAxis=cgnx_StandardProductsandServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductOrServiceAxis=cgnx_ApplicationSpecificCustomerSolutionsMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductOrServiceAxis=cgnx_ApplicationSpecificCustomerSolutionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<FILENAME>R54.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6705125120">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue Recognition - Additional Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</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_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostGross', window );">Costs to fulfill contract</a></td>
<td class="nump">$ 6,811<span></span>
</td>
<td class="nump">$ 3,230<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CapitalizedContractCostGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount, before accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 340<br> -SubTopic 40<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=68051541&amp;loc=SL49131252-203054<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;">us-gaap_CapitalizedContractCostGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>66
<FILENAME>R55.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6762438272">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Deferred Revenue Activity (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2018 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MovementInDeferredRevenueRollForward', window );"><strong>Movement in Deferred Revenue [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredRevenue', window );">Balance as of December 31, 2017</a></td>
<td class="nump">$ 9,420<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_us-gaap_DeferredRevenueAdditions', window );">Increases to deferred revenue and customer deposits</a></td>
<td class="nump">55,408<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_us-gaap_DeferredRevenueRevenueRecognized1', window );">Recognition of revenue</a></td>
<td class="num">(50,590)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment', window );">Foreign exchange rate changes</a></td>
<td class="num">(986)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredRevenue', window );">Balance as of September 30, 2018</a></td>
<td class="nump">$ 13,252<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Deferred Revenue, Foreign Currency Exchange Adjustment</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;">cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of deferred revenue as of balance sheet date. Deferred revenue represents collections of cash or other assets related to a revenue producing activity for which revenue has not yet been recognized. Generally, an entity records deferred revenue when it receives consideration from a customer before achieving certain criteria that must be met for revenue to be recognized in conformity with GAAP.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.4(a).Q1)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<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;">us-gaap_DeferredRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenueAdditions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of deferred revenue recognized for transactions arising during the current reporting period. Deferred revenue is a liability as of the balance sheet date related to a revenue producing activity for which revenue has not yet been recognized. Generally, an Entity records deferred revenue when it receives consideration from a customer before achieving certain criteria that must be met for revenue to be recognized in conformity with GAAP.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 13.A.4(a).Q1)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 13.A.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<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;">us-gaap_DeferredRevenueAdditions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenueRevenueRecognized1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of revenue recognized that was previously reported as deferred or unearned revenue.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 605<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 13.A.4(a).Q1 Response))<br> -URI http://asc.fasb.org/extlink&amp;oid=65893310&amp;loc=d3e214044-122780<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;">us-gaap_DeferredRevenueRevenueRecognized1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MovementInDeferredRevenueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_MovementInDeferredRevenueRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<FILENAME>R56.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6759961600">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense (Detail)<br></strong></div></th>
<th class="th" colspan="4">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Sep. 30, 2018 </div>
<div>USD ($) </div>
<div>group </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Apr. 01, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Oct. 01, 2017 </div>
<div>USD ($) </div>
<div>$ / shares</div>
</th>
<th class="th">
<div>Apr. 02, 2017 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2018 </div>
<div>USD ($) </div>
<div>group </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Oct. 01, 2017 </div>
<div>USD ($) </div>
<div>$ / shares</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_Vestingperiodperformancebasedrestrictedstockyears', window );">Vesting period, performance-based restricted stock, years</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_Vestingperiodtimebasedrestrictedstockyears', window );">Vesting period, time-based restricted stock, years</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_NumberOfGroupsWithinEmployeePopulation', window );">Groups within the employee population | group</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement', window );">Estimated annual forfeiture rate for unvested options for senior management</a></td>
<td class="nump">8.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement', window );">Estimated annual forfeiture rate for unvested options for all other employees</a></td>
<td class="nump">12.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates', window );">Increase (decrease) to compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,283,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 673,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted-average grant-date fair values, in dollars per share | $ / shares</a></td>
<td class="nump">$ 22.52<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 14.80<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 21.70<span></span>
</td>
<td class="nump">$ 14.97<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue', window );">Total intrinsic value</a></td>
<td class="nump">$ 17,985,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 28,462,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 50,975,000<span></span>
</td>
<td class="nump">$ 100,913,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue', window );">Total fair values of stock options vest</a></td>
<td class="nump">997,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">844,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">27,557,000<span></span>
</td>
<td class="nump">19,557,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unrecognized compensation expense</a></td>
<td class="nump">50,387,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 50,387,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition', window );">Weighted average period to be recognized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year 7 months 10 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">9,143,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,026,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 31,339,000<span></span>
</td>
<td class="nump">23,355,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense', window );">Tax benefit from compensation expense</a></td>
<td class="nump">1,654,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,639,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,608,000<span></span>
</td>
<td class="nump">$ 7,661,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount', window );">Recognized period costs capitalized</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PlanNameAxis=cgnx_GeneralStockOptionPlanMember', window );">General Stock Option Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period for stock option plans</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">4 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Shares available for grant under stock option plans | shares</a></td>
<td class="nump">20,246,002<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20,246,002<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_ExpirationPeriodOfStockOptionPlan', window );">Expiration period from grant day</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount">
<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>Employee service share based compensation recognized period costs capitalized amount.</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;">cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Period for Recognition</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;">cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Estimated forfeiture rate for unvested options for all non-senior management.</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;">cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement">
<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>Estimated forfeiture rate for unvested options for senior management.</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;">cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_ExpirationPeriodOfStockOptionPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Expiration period of stock option plan.</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;">cgnx_ExpirationPeriodOfStockOptionPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates">
<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>Increase (decrease) in compensation expense due to revised estimated forfeiture rates.</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;">cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_NumberOfGroupsWithinEmployeePopulation">
<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>Number of groups within employee population.</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;">cgnx_NumberOfGroupsWithinEmployeePopulation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Share based compensation arrangement by share based payment award options vested fair value.</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;">cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Shares based compensation arrangement by shares based payment award options exercisable intrinsic value.</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;">cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_Vestingperiodperformancebasedrestrictedstockyears">
<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>Vesting period, performance-based restricted stock, years</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;">cgnx_Vestingperiodperformancebasedrestrictedstockyears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_Vestingperiodtimebasedrestrictedstockyears">
<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>Vesting period, time-based restricted stock, years</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;">cgnx_Vestingperiodtimebasedrestrictedstockyears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<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>Represents the expense recognized during the period arising from equity-based compensation arrangements (for example, shares of stock, unit, stock options or other equity instruments) with employees, directors and certain consultants qualifying for treatment as employees.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=27013229&amp;loc=d3e301413-122809<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5047-113901<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Unrecognized cost of unvested share-based compensation awards.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 total recognized tax benefit related to compensation cost for equity-based payment arrangements recognized in income during the period.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<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>Period which an employee's right to exercise an award is no longer contingent on satisfaction of either a service condition, market condition or a performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant">
<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 difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=cgnx_GeneralStockOptionPlanMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=cgnx_GeneralStockOptionPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<FILENAME>R57.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6760843184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense - Summary of Stock Option Activity (Detail)<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2018 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward', window );"><strong>Shares (in thousands)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding, shares | shares</a></td>
<td class="nump">12,726<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod', window );">Granted, shares | shares</a></td>
<td class="nump">2,318<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_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised, shares | shares</a></td>
<td class="num">(1,434)<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Forfeited or expired, shares | shares</a></td>
<td class="num">(429)<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding, shares | shares</a></td>
<td class="nump">13,181<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Exercisable as of reporting date, shares | shares</a></td>
<td class="nump">4,327<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber', window );">Options vested or expected to vest as of reporting date, shares | shares</a></td>
<td class="nump">11,916<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward', window );"><strong>Weighted- Average Exercise Price</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding, shares | $ / shares</a></td>
<td class="nump">$ 25.24<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_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted, in dollars per share | $ / shares</a></td>
<td class="nump">55.66<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_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised, in dollars per share | $ / shares</a></td>
<td class="nump">18.06<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice', window );">Forfeited or expired, in dollars per share | $ / shares</a></td>
<td class="nump">33.24<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding, shares | $ / shares</a></td>
<td class="nump">31.11<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Exercisable as of reporting date, Weighted-Average Exercise Price, in dollars per share | $ / shares</a></td>
<td class="nump">20.14<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice', window );">Weighted- Average Remaining Contractual Term (in years) | $ / shares</a></td>
<td class="nump">$ 29.99<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract', window );"><strong>Weighted- Average Remaining Contractual Term (in years)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding, in years</a></td>
<td class="text">7 years 5 months 23 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Exercisable, in years</a></td>
<td class="text">6 years 4 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1', window );">Options vested or expected to vest, in years</a></td>
<td class="text">7 years 4 months 13 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract', window );"><strong>Aggregate Intrinsic Value (in thousands)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Outstanding, in dollars | $</a></td>
<td class="nump">$ 329,301<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue', window );">Exercisable, in dollars | $</a></td>
<td class="nump">154,377<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue', window );">Options vested or expected to vest, in dollars | $</a></td>
<td class="nump">$ 310,772<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1 [Abstract]</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;">cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Share based compensation arrangement by share based payment award options exercisable aggregate intrinsic value.</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;">cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)-(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Weighted average price of options that were either forfeited or expired.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)-(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Net number of share options (or share units) granted during the period.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Number of options outstanding, including both vested and non-vested options.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Number of fully vested and expected to vest exercisable options that may be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Weighted average price at which option holders acquired shares when converting their stock options into shares.</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;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Number of share options (or share units) exercised during the current period.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84159872&amp;loc=d3e21463-112644<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>69
<FILENAME>R58.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6772420544">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Detail)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Disclosure of Compensation Related Costs, Share-based Payments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Risk-free rate</a></td>
<td class="nump">2.90%<span></span>
</td>
<td class="nump">2.40%<span></span>
</td>
<td class="nump">2.90%<span></span>
</td>
<td class="nump">2.40%<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate', window );">Expected dividend yield</a></td>
<td class="nump">0.32%<span></span>
</td>
<td class="nump">0.39%<span></span>
</td>
<td class="nump">0.32%<span></span>
</td>
<td class="nump">0.39%<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Expected volatility</a></td>
<td class="nump">39.00%<span></span>
</td>
<td class="nump">41.00%<span></span>
</td>
<td class="nump">39.00%<span></span>
</td>
<td class="nump">41.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected term (in years)</a></td>
<td class="text">5 years 4 months 24 days<span></span>
</td>
<td class="text">5 years 1 month 6 days<span></span>
</td>
<td class="text">5 years 3 months 18 days<span></span>
</td>
<td class="text">5 years 3 months 18 days<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- References</a><div><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;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 risk-free interest rate assumption that is used in valuing an option on its own shares.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Expected term of share-based compensation awards, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=27013229&amp;loc=d3e301413-122809<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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<FILENAME>R59.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6759729328">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense - Nonvested Restricted Stock Shares Activity (Details) - Restricted Stock<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2018 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Shares (in thousands)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Nonvested, shares | shares</a></td>
<td class="nump">20<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted, shares | shares</a></td>
<td class="text"> <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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested, shares | shares</a></td>
<td class="num">(20)<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited or expired, shares | shares</a></td>
<td class="text"> <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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Nonvested, shares | shares</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted-Average Grant Fair Value</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Nonvested, in dollars per share | $ / shares</a></td>
<td class="nump">$ 17.03<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted, in dollars per share | $ / shares</a></td>
<td class="text"> <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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested, in dollars per share | $ / shares</a></td>
<td class="nump">17.03<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited or expired, in dollars per share | $ / shares</a></td>
<td class="text"> <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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Nonvested, in dollars per share | $ / shares</a></td>
<td class="nump">$ 0.00<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract', window );"><strong>Aggregate Intrinsic Value (in thousands)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested', window );">Vested | $</a></td>
<td class="nump">$ 993<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_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested', window );">Nonvested as of September 30, 2018 | $</a></td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<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 number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 weighted average fair value of nonvested awards on equity-based plans excluding option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, revenue or profit achievement stock award plan) for which the employer is contingently obligated to issue equity instruments or transfer assets to an employee who has not yet satisfied service or performance criteria necessary to gain title to proceeds from the sale of the award or underlying shares or units.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract">
<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 );">- References</a><div><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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested">
<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>Intrinsic value of equity-based compensation awards not vested. Excludes stock and unit options.</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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested">
<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>Intrinsic value of equity-based compensation awards vested. Excludes stock and unit options.</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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>71
<FILENAME>R60.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6771630176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 9,143<span></span>
</td>
<td class="nump">$ 8,026<span></span>
</td>
<td class="nump">$ 31,339<span></span>
</td>
<td class="nump">$ 23,355<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfGoodsTotalMember', window );">Cost of Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">544<span></span>
</td>
<td class="nump">520<span></span>
</td>
<td class="nump">1,898<span></span>
</td>
<td class="nump">1,404<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember', window );">Research, Development, and Engineering Expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">3,197<span></span>
</td>
<td class="nump">2,765<span></span>
</td>
<td class="nump">11,166<span></span>
</td>
<td class="nump">8,090<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=cgnx_SellingGeneralAndAdministrativeMember', window );">Selling, General, and Administrative</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 5,402<span></span>
</td>
<td class="nump">$ 4,741<span></span>
</td>
<td class="nump">$ 18,275<span></span>
</td>
<td class="nump">$ 13,861<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Represents the expense recognized during the period arising from equity-based compensation arrangements (for example, shares of stock, unit, stock options or other equity instruments) with employees, directors and certain consultants qualifying for treatment as employees.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=27013229&amp;loc=d3e301413-122809<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5047-113901<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<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;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfGoodsTotalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfGoodsTotalMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=cgnx_SellingGeneralAndAdministrativeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=cgnx_SellingGeneralAndAdministrativeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<FILENAME>R61.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6771616832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Repurchase Program (Detail) - USD ($)<br> shares in Thousands</strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Feb. 28, 2018</div></th>
<th class="th"><div>Nov. 01, 2015</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_us-gaap_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity, Class of Treasury Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Stock repurchased during period, value</a></td>
<td class="nump">$ 142,262,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareRepurchaseProgramAxis=cgnx_RepurchaseProgramApril2017Member', window );">Repurchase Program April 2017</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity, Class of Treasury Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1', window );">Authorized common stock to be repurchased</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased', window );">Stock Repurchase Program, Aggregate Number of Shares Repurchased</a></td>
<td class="nump">1,744<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_StockRepurchaseProgramValue', window );">Shares repurchased, value</a></td>
<td class="nump">$ 100,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodShares', window );">Repurchase of common stock (in shares)</a></td>
<td class="nump">803<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Stock repurchased during period, value</a></td>
<td class="nump">$ 45,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareRepurchaseProgramAxis=cgnx_RepurchaseProgramFebruary2018Member', window );">Repurchase Program February 2018</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity, Class of Treasury Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1', window );">Authorized common stock to be repurchased</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 150,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodShares', window );">Repurchase of common stock (in shares)</a></td>
<td class="nump">1,947<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Stock repurchased during period, value</a></td>
<td class="nump">$ 97,062,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1', window );">Stock repurchase program, remaining authorized repurchase amount</a></td>
<td class="nump">52,938,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareRepurchaseProgramAxis=cgnx_RepurchaseProgramApril2017andFebruary2018Member', window );">Repurchase Program April 2017 and February 2018</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity, Class of Treasury Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Stock repurchased during period, value</a></td>
<td class="nump">$ 142,262,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased">
<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>Stock Repurchase Program, Aggregate Number of Shares Repurchased</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;">cgnx_StockRepurchaseProgramAggregateNumberofSharesRepurchased</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_StockRepurchaseProgramValue">
<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>Stock Repurchase Program, Value</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;">cgnx_StockRepurchaseProgramValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityClassOfTreasuryStockLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_EquityClassOfTreasuryStockLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount of stock repurchase plan authorized.</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;">us-gaap_StockRepurchaseProgramAuthorizedAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Amount remaining of a stock repurchase plan authorized.</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;">us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodShares">
<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>Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84159872&amp;loc=d3e21463-112644<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;">us-gaap_StockRepurchasedDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84159872&amp;loc=d3e21463-112644<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_StockRepurchasedDuringPeriodValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareRepurchaseProgramAxis=cgnx_RepurchaseProgramApril2017Member">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareRepurchaseProgramAxis=cgnx_RepurchaseProgramApril2017Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareRepurchaseProgramAxis=cgnx_RepurchaseProgramFebruary2018Member">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareRepurchaseProgramAxis=cgnx_RepurchaseProgramFebruary2018Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareRepurchaseProgramAxis=cgnx_RepurchaseProgramApril2017andFebruary2018Member">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareRepurchaseProgramAxis=cgnx_RepurchaseProgramApril2017andFebruary2018Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>R62.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6930686976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Taxes - Reconciliation of United States Federal Statutory Corporate Tax Rate to Company's Effective Tax Rate, or Income Tax Provision (Detail)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Income tax provision at federal statutory corporate tax rate</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">35.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">35.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes', window );">State income taxes, net of federal benefit</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.00%<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_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential', window );">Foreign tax rate differential</a></td>
<td class="num">(7.00%)<span></span>
</td>
<td class="num">(18.00%)<span></span>
</td>
<td class="num">(7.00%)<span></span>
</td>
<td class="num">(18.00%)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits', window );">Tax credit</a></td>
<td class="nump">(0.00%)<span></span>
</td>
<td class="num">(1.00%)<span></span>
</td>
<td class="nump">(0.00%)<span></span>
</td>
<td class="num">(1.00%)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017', window );">Discrete tax benefit related to Tax Act 2017</a></td>
<td class="num">(9.00%)<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
<td class="num">(4.00%)<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent', window );">Discrete tax benefit related to stock option exercises</a></td>
<td class="num">(4.00%)<span></span>
</td>
<td class="num">(7.00%)<span></span>
</td>
<td class="num">(5.00%)<span></span>
</td>
<td class="num">(13.00%)<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_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate', window );">Other discrete tax events</a></td>
<td class="num">(2.00%)<span></span>
</td>
<td class="num">(2.00%)<span></span>
</td>
<td class="num">(1.00%)<span></span>
</td>
<td class="num">(1.00%)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments', window );">Other</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Income tax provision</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">9.00%<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
<td class="nump">4.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent">
<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>Effective Income Tax Rate Reconciliation, Share-based Compensation, Excess Tax Benefit, Percent</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;">cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017">
<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>Effective Income Tax Rate Reconciliation, Tax Act 2017</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;">cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations">
<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>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(h)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<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;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=34349781&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<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;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate">
<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>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the income tax rates.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=34349781&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<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;">us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential">
<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>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to statutory income tax expense (benefit) outside of the country of domicile.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=34349781&amp;loc=d3e330036-122817<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;">us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments">
<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>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=34349781&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<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;">us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes">
<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>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=34349781&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<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;">us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits">
<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>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=34349781&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<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;">us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<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 );">- References</a><div><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;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<FILENAME>R63.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6773963376">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Taxes (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jan. 01, 2018</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Dec. 31, 2017</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_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017', window );">Discrete tax benefit related to Tax Act 2017</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(9.00%)<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
<td class="num">(4.00%)<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Income tax provision at federal statutory corporate tax rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">35.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">35.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential', window );">Decrease in effective tax rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
<td class="nump">18.00%<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
<td class="nump">18.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent', window );">Decrease in effective tax rate for difference between deduction for tax purposes and compensation cost recognized from stock option exercises</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.00%<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
<td class="nump">5.00%<span></span>
</td>
<td class="nump">13.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate', window );">Other discrete tax events</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2.00%)<span></span>
</td>
<td class="num">(2.00%)<span></span>
</td>
<td class="num">(1.00%)<span></span>
</td>
<td class="num">(1.00%)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear', window );">Increase in reserves for income taxes, net of deferred tax benefit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 204<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 204<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_IncreaseDecreaseInterestAndPenalties', window );">Interest and penalties included in reserve</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_LiabilityForUncertainTaxPositions', window );">Liability for uncertain tax positions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,674<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,674<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent', window );">Reserve for income taxes classified as a noncurrent iability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,646<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,646<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 6,488<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets', window );">Reserve for income taxes classified an noncurrent deferred tax assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,028<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,028<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued', window );">Interest and penalties, gross</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 773<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">773<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves', window );">Minimum decrease in income tax expense due to release in reserves</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves', window );">Maximum decrease in income tax expense due to release in reserves</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_TaxyearsopentoexaminationbyInternalRevenueService', window );">Tax years open to examination by Internal Revenue Service</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2015 through 2017<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities', window );">Tax years open to examination by various taxing authorities for other entities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2014 through 2017<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember', window );">Foreign Tax Authority | Revenue Commissioners, Ireland</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Income tax provision at federal statutory corporate tax rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember', window );">Foreign Tax Authority | State Administration of Taxation, China</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Income tax provision at federal statutory corporate tax rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember', window );">Domestic Tax Authority</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Income tax provision at federal statutory corporate tax rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201616Member', window );">Accounting Standards Update 2016-16</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1', window );">Cumulative effect on retained earnings, net of tax</a></td>
<td class="nump">$ 5,961<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent">
<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>Effective Income Tax Rate Reconciliation, Share-based Compensation, Excess Tax Benefit, Percent</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;">cgnx_EffectiveIncomeTaxRateReconciliationSharebasedCompensationExcessTaxBenefitPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017">
<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>Effective Income Tax Rate Reconciliation, Tax Act 2017</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;">cgnx_EffectiveIncomeTaxRateReconciliationTaxAct2017</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities">
<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 year(s) being audited in connection with the income tax examination for other entities.</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;">cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_IncreaseDecreaseInterestAndPenalties">
<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>Increase decrease interest and penalties.</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;">cgnx_IncreaseDecreaseInterestAndPenalties</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_LiabilityForUncertainTaxPositions">
<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>Liability for uncertain tax positions, total.</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;">cgnx_LiabilityForUncertainTaxPositions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves">
<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>Maximum decrease in income tax expense due to release in reserves.</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;">cgnx_MaximumDecreaseInIncomeTaxExpenseDueToReleaseInReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves">
<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>Minimum decrease in income tax expense due to release in reserves.</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;">cgnx_MinimumDecreaseInIncomeTaxExpenseDueToReleaseInReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_TaxyearsopentoexaminationbyInternalRevenueService">
<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>Tax years open to examination by Internal Revenue Service</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;">cgnx_TaxyearsopentoexaminationbyInternalRevenueService</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets">
<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>Unrecognized tax benefit shown as a reduction to noncurrent deferred tax assets as a result of net operating loss carryforward, a similar tax loss, or a tax credit carryforward.</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;">cgnx_Unrecognizedtaxbenefitshownasareductiontononcurrentdeferredtaxassets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1">
<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>Amount of the cumulative effect on retained earnings net of related income tax effect.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=64853466&amp;loc=d3e22663-107794<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;">us-gaap_CumulativeEffectOnRetainedEarningsNetOfTax1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<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>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=34349781&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<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;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate">
<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>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the income tax rates.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=34349781&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<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;">us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential">
<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>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to statutory income tax expense (benefit) outside of the country of domicile.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=34349781&amp;loc=d3e330036-122817<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;">us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxContingencyLineItems">
<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>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_IncomeTaxContingencyLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear">
<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 amount the liability recorded for the income tax examination increased or decreased in the current year/accounting period.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=SL6600010-109319<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;">us-gaap_IncomeTaxExaminationIncreaseDecreaseInLiabilityFromPriorYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent">
<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>Amount recognized for uncertainty in income taxes classified as noncurrent.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<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;">us-gaap_LiabilityForUncertainTaxPositionsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued">
<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>Amount accrued for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32718-109319<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;">us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_RevenueCommissionersIrelandMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_RevenueCommissionersIrelandMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_StateAdministrationOfTaxationChinaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_StateAdministrationOfTaxationChinaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201616Member">
<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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201616Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<FILENAME>R64.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6662634400">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Weighted-Average Shares (Detail) - shares<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Stock options to purchase anti-dilutive common stock</a></td>
<td class="nump">2,796,000<span></span>
</td>
<td class="nump">466,000<span></span>
</td>
<td class="nump">2,353,000<span></span>
</td>
<td class="nump">3,108,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<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>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<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;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<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 );">- References</a><div><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;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>76
<FILENAME>R65.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6773839296">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Weighted-Average Shares - Calculation of Weighted-Average Shares (Detail) - shares<br> shares in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Oct. 01, 2017</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_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic weighted-average common shares outstanding</a></td>
<td class="nump">172,189<span></span>
</td>
<td class="nump">173,234<span></span>
</td>
<td class="nump">172,613<span></span>
</td>
<td class="nump">173,052<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_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment', window );">Effect of dilutive stock options</a></td>
<td class="nump">5,056<span></span>
</td>
<td class="nump">6,120<span></span>
</td>
<td class="nump">5,408<span></span>
</td>
<td class="nump">6,072<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted-average common and common-equivalent shares outstanding</a></td>
<td class="nump">177,245<span></span>
</td>
<td class="nump">179,354<span></span>
</td>
<td class="nump">178,021<span></span>
</td>
<td class="nump">179,124<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<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 );">- References</a><div><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;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<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;">us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1505-109256<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<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;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1448-109256<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;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>77
<FILENAME>R66.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.10.0.1</span><table class="report" border="0" cellspacing="2" id="idp6645572976">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Subsequent Events (Details) - Subsequent Event<br></strong></div></th>
<th class="th">
<div>Oct. 29, 2018 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Dividends', window );">Dividends (in dollars per share)</a></td>
<td class="nump">$ 0.05<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_us-gaap_DividendPayableDateToBePaidDayMonthAndYear', window );">Dividends payable, date payable</a></td>
<td class="text">Nov. 30,  2018<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_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear', window );">Dividends payable, date of record</a></td>
<td class="text">Nov. 16,  2018<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cgnx_StockRepurchaseProgramValue', window );">Stock Repurchase Program, Value</a></td>
<td class="nump">$ 200,000,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_StockRepurchaseProgramValue">
<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>Stock Repurchase Program, Value</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;">cgnx_StockRepurchaseProgramValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DividendPayableDateToBePaidDayMonthAndYear">
<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>Date the declared dividend will be paid, in CCYY-MM-DD format.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4304-108586<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;">us-gaap_DividendPayableDateToBePaidDayMonthAndYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_Dividends">
<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>Amount of paid and unpaid cash, stock, and paid-in-kind (PIK) dividends declared, for example, but not limited to, common and preferred stock.</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 FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 405<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6957935&amp;loc=d3e64057-112817<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;">us-gaap_Dividends</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DividendsPayableDateOfRecordDayMonthAndYear">
<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>Date the holder must own the stock to be entitled to the dividend, in CCYY-MM-DD format.</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;">us-gaap_DividendsPayableDateOfRecordDayMonthAndYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_SubsequentEventLineItems">
<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>Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.</p></div>
<a href="javascript:void(0);" onclick="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;">us-gaap_SubsequentEventLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>78
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( !N!74T?(\\#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,$%     @ &X%=32?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    "  ;@5U-Z3S=%>\    K @  $0   &1O8U!R;W!S+V-O
M<F4N>&ULS9+!3L,P#(9?!>7>NNG$&%&7"]-.("$Q"<0M2KPMHDFCQ*C=V].&
MK1."!^ 8^\_GSY(;'83N(C['+F DB^EF<*U/0H<U.Q(% 9#T$9U*Y9CP8W/?
M1:=H?,8#!*4_U &AKJHE."1E%"F8@$68B4PV1@L=45$7SWBC9WSXC&V&&0W8
MHD-/"7C)@<EI8C@-;0-7P 0CC"Y]%]#,Q%S]$YL[P,[)(=DYU?=]V2]R;MR!
MP]O3XTM>M[ ^D?(:QU_)"CH%7+/+Y-?%PV:W9;*N^*K@55'?[_A25'?B=O4^
MN?[PNPJ[SMB]_<?&%T'9P*^[D%]02P,$%     @ &X%=39E<G",0!@  G"<
M !,   !X;"]T:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T
M$W-I=MNTF83M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY
M\^XN8NB&B)3R>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2
MP]R"BPA+>!3+UES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?
M,_@5RU2-9:,!$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA
M5,+$P&IG/U9KQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M
M&N#C\7@XMLO2BW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_K
MFVB<"HU;3]-K=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K
M>A(5M>5 TR  6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T
M1G*=D 4. #?$T4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)
MI#-ZG7TZSFN4?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R
M.AQG0GS/]O:1I24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG
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
M:Z3?J_;.T0Z4/'7W*:^_U"W_ 5!+ P04    "  ;@5U-2OI\L#\"   ;!P
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
MW?7,['HSM.?Y/+"X'4JN_P502P,$%     @ &X%=3>Y&0'S_ 0  B 4  !@
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
MGC+?YZ!N90UI ?4H"^N]=PUU0XH9<@@FK #"LOY&%@!.<DZ_'%!6<<X0IJL
MNK)&OJ""U+NR-(,$A"&$W#F$8+P*P"MKX@NJ22M#5R CKC(T$\Q6 6QEC7NQ
MX Q1;S] )!1R&Z)@N J"JT:]6'*2*PO[\EM=J$J?HQ%&K #$BD;L2?3A*,L%
MT=\D:Z0;:CVOU]#RXK!QE]KGZ5RVFSTTK_M^/-6[>'H^^[WC\;!2/5_1U?IX
M@OLCS/% ^?>Z?=[LN]F7IN^;W71@^=0T?1ILND_#D+VD^O%\LTU/_7@9ANOV
M>)![O.F;P^F0>GD^*;_]#U!+ P04    "  ;@5U-ETFAT5,#  #?#0  &
M 'AL+W=O<FMS:&5E=',O<VAE970X+GAM;(U778^:0!3]*X1WE_EFV*A)U35M
MTB:;-FV?61V5+# 64+?_O@.RK#-SU;X(@^?>>^['')CQ25>O]4ZI)G@K\K*>
MA+NFV3]&4;W:J2*M'_1>E>:?C:Z*M#'+:AO5^TJEZ\ZHR"."D(B*-"O#Z;A[
M]EQ-Q_K0Y%FIGJN@/A1%6OV=J5R?)B$.WQ]\S[:[IGT03<?[=*M^J.;G_KDR
MJVCPLLX*5=:9+H-*;2;A)_RXQ+(UZ!"_,G6J+^Z#-I47K5_;Q9?U)$0M(Y6K
M5=.Z2,WEJ.8JSUM/AL>?WFDXQ&P-+^_?O2^[Y$TR+VFMYCK_G:V;W2248;!6
MF_20-]_UZ;/J$^)AT&?_51U5;N M$Q-CI?.Z^PU6A[K11>_%4"G2M_,U*[OK
MJ??_;@8;D-Z # :8W#2@O0'],* W#5AOP 8#$M\TX+T!_X@@;QJ(WD ,!K2+
M$)V+U55_D3;I=%SI4U"=!VB?MG.*'X7I[ZI]V+6S^\\TH#9/CU-,\3@ZMHYZ
MS.R,(1:&V)@YA*$V9@%AF(UY@C#<QBPAC!@PD<EW2)J 29/. ;4<Q+ #"CJ@
MG0-F.9!.U<Z8N,.4'6;$$^'4]ND>RB+#0#(,(),X9,X8?A$&QY2CV.GB79A%
MAX-TN$^'(8<.][+&*.$B=B9F[N,H<S@O? P39O:<=CQQ+S4A))>.MZ7O;409
M3Q*X @*L@/C_\8I!!S%00F=PYK'?*G:QFZPH$HPB_2C$V=8SZ44A7$IW\TN_
M34Z30#_QE:HF(-T$*(I+)/'"C$C,$1P&(U@1$5 7ZDHB\B,9.D1XNHB #>YJ
MWA5G_,K0X"M2CGWBB+O$L1>+FMV2N%)]#V83@F46$Z"2S"5$@)Y1(JE;I+LX
MFQ(LW-A7;E=09CW&44')$I?179S-"%9O#,@W\\;-%^81EHZJ+N^A;#JP>F-(
MOKV>^6(ZXOYK^@[*I@-+*18 '6^F!;#'4"Q=/@+@<PFS"<'2C"%M%BXA0)QC
M@OR/)A"'DRNO?PSK. :$W!]J7Z,Q9@ES>SL'@-2M^ ( <2PY%^X6\7$B1HD_
M*CYNQ!!-B%.(Z.*SMCWZ?$NK;5;6P8MNS!=R]QV[T;I1QB=Z,&7=F=/6L,C5
MIFEO8W-?G8\<YT6C]_UQ*AK.=--_4$L#!!0    ( !N!74WV%UC&"0(  (L%
M   8    >&PO=V]R:W-H965T<R]S:&5E=#DN>&ULC51;;YLP%/XKB/?5X9(V
MC0A20S)MTB9%K;8].W"XJ#:FMA.Z?S_;.)0 ROH2^QR^[SL7GYRH9?Q5E #2
M>:>D%ANWE+)9(R32$B@6=ZR!6GW)&:=8*I,72#0<<&9(E"!_L;A'%%>U&T?&
M=^!QQ$Z25#4<N"-.E&+^=PN$M1O7<R^.YZHHI7:@.&IP 2\@?S4'KBS4JV05
MA5I4K'8XY!OWR5OO0XTW@-\5M&)P=W0E1\9>M?$]V[@+G1 02*56P.HX0P*$
M:"&5QIO5=/N0FCB\7]2_FMI5+4<L(&'D3Y7)<N.N7">#')^(?&;M-[#U+%W'
M%O\#SD 47&>B8J2,"//KI"<A&;4J*A6*W[NSJLW96OT+;9[@6X+?$U3L6X3
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
M\?BT\0$:8SQ@*LD=SE"'/VPQ)#0^'-_AV4YS-AG>]/,78LL_+G\#4$L#!!0
M   ( !N!74U-C#M@M@$  -$#   9    >&PO=V]R:W-H965T<R]S:&5E=#$T
M+GAM;'U3VV[<(!#]%<0'!!MO-M'*MI1-%;52*ZT2M7EF[;&-PL4%O$[_/H =
MQTJLO@ SS#ES9ACR49L7VP$X]"J%L@7NG.L/A-BJ \GLE>Y!^9M&&\F<-TU+
M;&^ U1$D!:%)LB>2<87+//I.ILSUX 17<#+(#E(R\^\(0H\%3O&[XY&WG0L.
M4N8]:^$)W._^9+Q%%I::2U"6:X4,- 6^2P_'78B/ 7\XC'9U1J&2L]8OP?A1
M%S@)@D! Y0(#\]L%[D&(0.1E_)TY\9(R -?G=_:'6+NOY<PLW&OQS&O7%?@6
MHQH:-@CWJ,?O,-=SC=%<_$^X@/#A08G/46EAXXJJP3HM9Q8O1;+7:><J[N-T
MD]$9M@V@,X N@-N8ATR)HO)OS+$R-WI$9NI]S\(3IP?J>U,%9VQ%O//BK?=>
MRILD)Y? ,X<<IQ"Z"DF7".+)EPQT*\.1?H'3;!N?;2K,(CY;I]_3;8+=)L$N
M$NS^5^+7D'3_6219M52":>,P653I0<5!7GF7>;V+;T@^PJ=A_\5,RY5%9^W\
MP\;V-UH[\%*2*S]!G?]?BR&@<>%XX\]FFK+)<+J?/Q!9?G'Y!E!+ P04
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
MNVFV*]M2-E&52JVT2M7DF;7'-@H8!_ Z_?L.V'&LULH+,,,Y9RX,Z6#LBVL
M/'G3JG49;;SO#HRYH@$MW)7IH,6;RE@M/)JV9JZS(,I(THKQ)/G"M) MS=/H
M.]D\-;U7LH63):[76M@_1U!FR.B&OCL>9=WXX&!YVHD:?H'_W9TL6FQ6*:6&
MUDG3$@M51F\WA^,NX"/@2<+@%F<2*CD;\Q*,[V5&DY 0*"A\4!"X7> .E I"
MF,;KI$GGD(&X/+^K?XNU8RUGX>#.J&=9^B:C>TI*J$2O_*,9'F"JYYJ2J?@?
M< &%\) )QBB,<G$E1>^\T9,*IJ+%V[C+-N[#>,.O)]HZ@4\$/A/V,0X; \7,
M[X47>6K-0.S8^TZ$)]X<./:F",[8BGB'R3OT7O+-S=>478+0A#F.&+[$S B&
MZG,(OA;BR/^C\^TZ?[N:XC;RM\OP^V1=8+<JL(L"NT]K7,'L_ZV2+9JJP=9Q
MG!PI3-_&45YXYXF]Y?%1/N#CN/\4MI:M(V?C\6GC U3&>,!4DBN<H09_V&PH
MJ'PXWN#9CG,V&MYTTQ=B\S_._P)02P,$%     @ &X%=3678QHVT 0  TP,
M !D   !X;"]W;W)K<VAE971S+W-H965T,C$N>&UL?5/1;IPP$/P5RQ\0WQF:
MGDZ E$M5)5(KG5*U??;! E9LEMCF2/^^MB&4MK0OV+O,S,[:ZVQ$\VQ; $=>
MM>IL3EOG^B-CMFQ!"WN#/73^3XU&"^=#TS#;&Q!5)&G%^&YWR[20'2VRF#N;
M(L/!*=G!V1 [:"W,CQ,H''.ZIV^))]FT+B18D?6B@2_@OO9GXR.VJ%120V<E
M=L1 G=.[_?&4!GP$?),PVM6>A$XNB,\A>*QRN@N&0$'I@H+PRQ7N0:D@Y&V\
MS)IT*1F(Z_V;^L?8N^_E(BS<H_HN*]?F]$!)!;48E'O"\0'F?MY1,C?_":Z@
M/#PX\35*5#9^23E8AWI6\5:T>)U6V<5UG/XDR4S;)O"9P!?"(=9A4Z'H_(-P
MHL@,CL1,9]^+<,7[(_=G4X9D/(KXSYNW/GLM]@>>L6L0FC&G"</7F 7!O/I2
M@F^5./&_Z#S9YB>;%I/(3WZS^ ^!=%,@C0+I?WO<PJ1_%&&K0]5@FCA.EI0X
M='&45]EE8N]XO)1?\&G</PO3R,Z2"SI_M?$":D0'WLKNQL]0ZU_8$BBH7=B^
M]WLSS=D4..SG)\26=US\!%!+ P04    "  ;@5U-]4RKQK0!  #3 P  &0
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
MD^#O:RFE 6LE>K"G6ML':0XXE,9M8[M7XUB.@9'=].*0^=G+_@)02P,$%
M  @ &X%=3::=3/;B 0   @4  !D   !X;"]W;W)K<VAE971S+W-H965T,S$N
M>&UL=53;;IPP$/T5Y ^(P>PNFQ4@91-5K=1*JU1-G[TP7!0;4]LLZ=_7-H12
MZKQ@S_C,.3.#Q^DHY*MJ '3PQEFG,M1HW9\P5D4#G*H[T4-G3BHA.=7&E#56
MO01:NB#., G# ^:T[5">.M]%YJD8-&L[N,A #9Q3^?L,3(P9BM"[X[FM&VT=
M.$][6L-WT#_ZBS067EC*ED.G6M$%$JH,/42G<V+Q#O#2PJA6^\!6<A7BU1I?
MR@R%-B%@4&C+0,UR@T=@S!*9-'[-G&B1M('K_3O[)U>[J>5*%3P*]K,M=9.A
M(PI*J.C ]+,8/\-<SQX%<_%?X0;,P&TF1J,03+EO4 Q*"SZSF%0X?9O6MG/K
M.)TD]W.8/X#, 60).#H=/ FYS)^HIGDJQ1C(J?<]M;\X.A'3F\(Z72O<F4E>
M&>\M)^28XILEFC'G"4-6F&A!8,.^2!"?Q)G\%TYB?WSL33%V\?%:/MGY"79>
M@ITCV/U3X_VF1@\F#OTB>Z_(WD,0;41\&.(7.7A%#AZ">"/BPWS0KL0KDG@(
M]AL1'^:P$<&K.\A!UF[Z5%"(H7.3O_(N _Y W!W^"Y]>AV]4UFVG@JO09A+<
M?:V$T&!2">],5QOS("T&@TK;;6+V<AK+R="BGU\<O#Q[^1]02P,$%     @
M&X%=3<Z[0K?? 0   @4  !D   !X;"]W;W)K<VAE971S+W-H965T,S(N>&UL
M=53;;IPP$/T5Y ^(6<,NZ0J0LHFB5FJE5:JVSUX8+HJ-J6V6].]K&Y92XKQ@
MS_C,.3.#Q^DHY*MJ '3PQEFG,M1HW1\Q5D4#G*H[T4-G3BHA.=7&E#56O01:
MNB#., G# ^:T[5">.M]9YJD8-&L[.,M #9Q3^><$3(P9VJ&;XZ6M&VT=.$][
M6L-WT#_ZLS067EC*ED.G6M$%$JH,/>R.I\3B'>!G"Z-:[0-;R46(5VM\*3,4
MVH2 0:$M S7+%1Z!,4MDTO@]<Z)%T@:N]S?V9U>[J>5"%3P*]JLM=9.A>Q24
M4-&!Z1<Q?H:YGCT*YN*_PA68@=M,C$8AF'+?H!B4%GQF,:EP^C:M;>?6<>:_
MA?D#R!Q -@%X$G*9/U%-\U2*,9!3[WMJ?_'N2$QO"NMTK7!G)GEEO-><1$F*
MKY9HQIPF#%EA=@L"&_9%@O@D3N1=.(G\\9$WQ<C%1VOY)/$3Q%Z"V!'$_R5P
MOZG1A_GD%]E[1?;O">)P(^+#?-#*@U?DX"$@&Q$?YH-^)UZ1Q$,0;T1\F/U&
M!*_N( =9N^E302&&SDW^RKL,^ -Q=_@??'H=OE%9MYT*+D*;27#WM1)"@TDE
MO#-=;<R#M!@,*FVWB=G+:2PG0XM^?G'P\NSE?P%02P,$%     @ &X%=37.I
MNY>U 0  TP,  !D   !X;"]W;W)K<VAE971S+W-H965T,S,N>&UL=5/;;MLP
M#/T501]0)8K;!H%MH.E0;, &!!VV/2LV?4$ET9/DN/O[2;+C>9GW8I'T.8<7
M4>F YLTV (Z\*ZEM1AOGN@-CMFA "7N''6C_IT*CA/.NJ9GM#(@RDI1D?+-Y
M8$JTFN9IC)U,GF+O9*OA9(CME1+FUQ$D#AG=TFO@M:T;%P(L3SM1PU=PW[J3
M\1Z;5<I6@;8M:F*@RNC3]G!, CX"OK<PV(5-0B=GQ+?@?"HSN@D%@83"!07A
MCPL\@Y1!R)?Q<]*D<\I 7-I7]9?8N^_E+"P\H_S1EJ[)Z)Z2$BK12_>*PT>8
M^KFG9&K^,UQ >GBHQ.<H4-KX)45O':I)Q9>BQ/MXMCJ>PZ1_I:T3^$3@-P0V
M)HJ5?Q!.Y*G!@9AQ]IT(5[P]<#^;(@3C*.(_7[SUT4O.DX>478+0A#F.&+[
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
MW:3=KX<%GN' FL.X>!6=5M#6_P%02P,$%     @ &X%=35*]N7B% @  ZP@
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
M('J[\:UXWO?#C7@Y/^3/]F_;_W-X;-U5?,ZR+2I;=T53SUJ[6T0?X>&S5$/
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
M)?H_])NNK?G8$ZNQ-W4__0;[UWXPS>+%=J4I?\[7JIVNE\7_>S/<@)8&=&U
M<RRST-3SK^50[C:=N03=//CG<OS&XH'LV.S'E]-03/_9SO?V[=M.QODF>AL=
M+3:/LPW=V% AKC:1]7\5(2A"DP-YZR#/L ,)'<C)@;KK9>'T<K;))IMVMA&9
M*!*LHZ".\G5$[.C,-LF-SB]95F"5!*HD0$4X*HFG(E21*L(Z*=1)@0XY.JD?
M39HS'S>#*AE0D8Y*YJFH-,TEDP,YU,F!CG)T<C\:H=(8RQ10IO!D*&'Z*6*,
M5+P^W05#I5B1\(O178[(3-S@>R^%V12T(N<7H_N!S10CA!D6 &(O[1>C6Z%4
MQI+Y@@)3+!#&;N(+P+$@+B0,LD DN[DO?)1MT122^TR898%@=M-? )JIX(0P
MSL+GF9*4<8%)%?D' , 4"A]# $#A R#2F)B ">-*\0H %J.[D94Y,RR$H28
MM0< ^5 K*HB9]XFIMXAI%P "3%/!?";"3!-BV@6 ?*9%DA<) S5AJ E![0)
M &I;9Q@A##7Y4%/"I12&E=+U !#&D$!9]0 @OZXF69IQG<6T$BJL7OZ#RDHQ
M%Q)FF@#3?O[[3,N<G8 D1EHBI-W\EP!I.S$S0AAIB9!V\U_Z2!=)(9E2(S'2
M$B'MIK\$2"ON*TEFJ>TC30FSO)485:D^L-['$$I06?T5OU]994*<$$95HKKJ
M9K]$JV1&!N,LT2K9S7T)ELE)P4S]$M,L$<U>Z@.:%3=N&&:)8/8RWX<Y%X))
M)H595HAE-_$58#EAIGV%458^RI0R&R&%&54?V.<J3)]:L]-5?D&E/&'F$\7L
M=%=M=5$Y960PQVK-7E?Y'.?<3E=AC-6:O:X"& LN2S#':LUN5_D<R[3@!@YS
MK-9L=Q>C["X@%Z_HYBAH/&K[L^Q>JK8/GLTPF&8Z^SD:,VCK,/YD^WS2Y>'Z
M4.OC,-YF]KZ;C[CFA\&<E^.[Z'J&N/L?4$L#!!0    ( !N!74U&\W9>C@0
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
MONQO@WZ@13M<=&B\;;-_4$L#!!0    ( !R!74WPFUR'[0,  )\4   9
M>&PO=V]R:W-H965T<R]S:&5E=#0S+GAM;)68ZXZC1A"%7P7Q $O?N(UL2QE'
M42(ETFBC;'XS=GN,%F@'F/'F[=-@QC)=IVWR9[CX=/6IINN;@M79M-^[H]9]
M\*.NFFX='OO^]!1%W>ZHZZ+[8DZZL;\<3%L7O;ULWZ+NU.IB/PZJJT@PED1U
M43;A9C7>>VDW*_/>5V6C7]J@>Z_KHOWW65?FO YY^'GC:_EV[(<;T69U*M[T
MG[K_Z_32VJOH&F5?UKKI2M,$K3ZLPY_XTU:)8<"H^%;J<W=S'@RIO!KS?;CX
M;;\.V>!(5WK7#R$*>_C06UU50R3KXY\I:'B=<QAX>_X9_9<Q>9O,:]'IK:G^
M+O?]<1UF8;#7A^*]ZK^:\Z]Z2B@.@RG[W_6'KJQ\<&+GV)FJ&_\&N_>N-_44
MQ5JIBQ^78]F,Q_,4_W,8'B"F >(Z@*N[ ^0T0#H#HHNS,=6?B[[8K%IS#MK+
MTSH5PZ;@3](NYFZX.:[=^)O-MK-W/S92)*OH8P@T:9XO&G&C$7(NV5))HJZ2
MR#JXVA#0AAC'RYF-% >0,( < ZA9@,S)XZ))1TUS,<E2H9Q4'JEF9A0THX"9
MW#%ST<0WTZ@\4\(Q U1I+&-L)H9F8FI&,L=,3*;A+,M<,T E>99C,PDTD]#G
M+#D.D,( *<C&\?F<$I]IXG&9P4DR$D P[CY ($J9)Y<<3I.#:83[:("(9YX-
MP!FN<88FXFZ5(Q7W%"'WT(2CF=SG U0\R3U+QS$PN$ S27<FJLI]&Y9CL'!
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
M"Z%^IQ%;];++.[QQ6_P%4$L#!!0    ( !R!74UI<N(O"@(  &T&   9
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
MQ+"2I$,$'@DE D.)@% "F" &">+[Q9R !!/ @]ZE6->8Z(:85D1B1:2W$)U
MIF @4R"0"":8@02S^Z5$/IP(?,"'N)\)?*N: &1P-^TT*0!!(Y*BD<R&@( F
M(Q1@6GI$^ .RP@D#!??(&MAEM4(2.R0%("-O+(+3%X+RUW2$ DX;*/J J'#B
M0/$]HL9V4:V0Q Y) <B8(G :0U >FXU0P D$33\@*IQ"T&S@1>@/2H&9750K
M)+%#TIN0;D4!YS,\S&>A/U:4P!D$H_M%Q7 &P1CPHO^];T"=+_'5^3?USQ 4
M]JJ;!,!\"N+>BY$"*!3TKYMW54 6E!],-2^<+3N54DMRM=IV#(^F8>BMK]%\
M@X#U1'48=3_P3E^W)]\)/V2E<)Z95&6O*4[WC$FJ?/<?U(4XJHZHG>1T+_5P
MHL:\;@OJB615T_)X;=^U^@]02P,$%     @ '(%=30P\X%K/!   >Q<  !D
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
MJTRD1D%KKG^MXL8%;486F4J#WX9KU>IK/_(_PN  ;PSPI@!?%\<9A'3FG['
M><9H;[&A^!U6SQAM/5F;0AWJ4NA[,GDN3^]YD*:9<U=$(^8P8+P9!DT(1[)/
M$AXD<?",\"!,80(?S-'7!/Z<(')A@@ D"#1!,",(77=A<L"$&M-JC+>B$8(:
MH:$11-Y"P\2$[DHI(U D @B6(I%AY-.:DQ@4B0$GP4+$Q*PZ24"1Y ./)#&<
MK/A(08G4>&U"UX<)D LWAPMDN2S%"$IF::)XLZJTTH8(*+K1AR9HM>H([,4]
M\@"*<*DS@%#P04MPUR+?M!2CI90)6K<$-S>"NMMX2 ,H?O]=0G![H]#\$TK6
M$H6;%T'=&RT3C8Q$TW2M\'#_(J@YXZ5._&Y!G-D,:0B[ZNG)K8+>6CVZ9Z?3
MA-Y[>@;]AP_C_0=FUZKEUHD*.<GTO+E0*HC,Q-W(RI;RBV+:U.0BU#*6:S:,
MU6$C:#=^,CC3=TO^#U!+ P04    "  <@5U-W#?]W[("  "K"0  &0   'AL
M+W=O<FMS:&5E=',O<VAE970V,"YX;6R55MN.VC 0_94H'[#Q)<X% 1*P5*W4
M2JNMVCY[P4"T29S:!K9_7]O)9H-C*'TA]N3,F9G#Q)[IF8M7>6!,!6]56<M9
M>%"JF421W!Q81>4#;UBMW^RXJ*C26[&/9",8W5JGJHP0 $E4T:(.YU-K>Q+S
M*3^JLJC9DPCDL:JH^+-D)3_/0AB^&YZ+_4$90S2?-G3/OC/UHWD2>A?U+-NB
M8K4L>!T(MIN%"SA90VP<+.)GP<YRL Y,*2^<OYK-E^TL!"8C5K*-,A14/TYL
MQ<K2,.D\?G>D81_3. [7[^R?;/&ZF!<JV8J7OXJM.LS"+ RV;$>/I7KFY\^L
M*XB$05?]5W9BI8:;3'2,#2^E_0TV1ZEXU;'H5"KZUCZ+VC[/'?^[F]\!=0ZH
M=]"Q;SG@S@%_.,0W'>+.(;XW ND<B!,A:FNW8CY21>=3P<^!:/NAH:;MX(3H
MOVMCC/;?L>^TGE);3W,"LFET,D0=9MEBT "#T"7D<0R!/2+2"?19(%\62S2.
M@"\CK#R0V$GBWRSKFRP7B6*O7-CZXPNY<C]!["6(+4$\% H01^\6DUI,;3$Y
MC%T]QJ ,H,119 S"$./<$66,0A@3XB^+>,LBH[((!'Z"Q$N0W"]LZB5([Q"V
MQ9!!H21VFFCEP2#@R#K&P"QWOIJU!Q2#*\V6>4O*/*)>^:QR+T%^OZ@0^(\'
M<(>L'8A<M%F>.L)Z4"A-B'N0C%$0PL1I[+4'EH'\2L?!*T<?].B+KE!XSZT%
M1/^AL/]$@?@>A?'H$R4Q0*["8U2<QM!5>(R"&4J)J[ 'AK/$[;]H<-%43.SM
MK2^##3_6R@@SL/:3Q0*9B\JQ+^%D!3WV1S.)V(OM@[X=8[Y1L2]J&;QPI:]'
M>XGM.%=,9P\>=&<<].34;TJV4V:9ZK5HQX=VHWC3C491/Y_-_P)02P,$%
M  @ '(%=32QQMO*Q @  0@H  !D   !X;"]W;W)K<VAE971S+W-H965T-C$N
M>&ULE5;1;ML@%/T5RQ]0 \9V7"61FD33)FU2U&G;,TU(8M4V'I"D^_L!IJYC
MWT1I'F+ YY[#O7 ,T[.0K^K N0[>JK)6L_"@=?,816ISX!53#Z+AM7FS$[)B
MVG3E/E*-Y&SK@JHR(@BE4<6*.IQ/W=A:SJ?BJ,NBYFL9J&-5,?EOP4MQGH4X
M?!]X+O8';0>B^;1A>_Z3ZU_-6II>U+%LBXK7JA!U(/EN%C[AQQ5!-L A?A?\
MK'KMP*;R(L2K[7S;SD)D9\1+OM&6@IG'B2]Y65HF,X^_GC3L-&U@O_W._L4E
M;Y)Y88HO1?FGV.K#+)R$P9;OV+'4S^+\E?N$DC#PV7_G)UX:N)V)T=B(4KG_
M8'-46E2>Q4RE8F_MLZC=\]R^21,?!@<0'T"Z 'P[(/8!\4< O1E ?0 =!$1M
M*JXV*Z;9?"K%.9#M\C;,[B+\2$WU-W;0%=N],^519O0T3W \C4Z6R&,6+8;T
M,+A#1(:]DR"0Q(*,PLE 83F&))A>8E80)H'G$8.IQHX@OB!(80(*$E!'0"\(
MLD&M6DSF,'5;*TI(:HR(8*D$E$H J0E,D(($Z?W)9B!!!LP@'RQ)-DX6^1\L
M-0&E)F,I@@9U;3%)7RJC%%;)094<4,$#E?RS"6$$NPJ-Q,PV&-H*C7*:H/B*
MSA7WXCNVI ?ULZ()N944Z.,G3( *DBL4L 7Q)SR(81-BR(6#C;G$@ V3VPL)
M^Q"/C0@L9#+>G#G-K@C!?L7I/2N9CM+*,W3CXX)A;V/ W,-O\L*#^EDE)(\G
MU\5@=V/(WE><BV'KXOS^;4-@1Y*Q(\?U]:![OMY1[X"MN-R[RXL*-N)8NYM3
M;[2[(#T1=T!_P-O;U0\F]T6M@A>AS3'O#N.=$)J;&:$'4_Z#N=!UG9+OM&UF
MIBW;6TW;T:+Q-[:HNS;._P-02P,$%     @ '(%=3=C8L=G1 @  *0P  !D
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
M6,DV.VY+%+0ZV./[)CT%40"E,5I$QZN(<G9V #["$Y$?_BP!T$6C-?:*97G
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
M*2?FM=]=\*4)Q@*:L,U*@O_Y]<LKS.K<I,2K +JWMSK!\0?0@-,#9G!>7_Z
M!HPAR(H+SO6B_H\N-TP,V=0.!5=UC_W&<]=!FF.PW- FWU5(HPD.JR2D'=Q)
M5/G-&D/\,.?*K[-.]B<<(BF!PZ/>8.SZ9CS')P[>.9,3H#$]WFA1Y%A(Z^42
MV3K_V@@V&0@DXFT0[*K(".QU6'M>A^[5V1@;);MPDTQ".7,*#*,F:J[@&HI]
M +"%G8I+9,4K#$*Y$^\[8\RDX?O>@:NM$D5=Q<86H*JMH84(?(^Y?IN'X)_'
M]1U'R3!3%F0A)I<I&*ZH1*&++;/QMMSZBPL@$E$NE2!2;=I7<711 5J3EXUS
MXO&E3%(L^HOYZI50 UPE,QWJ(X@Z:V&3#=&I*W@ANI4Z4Y-H*PS<]5OLQ \)
MQ;+E\4WT1(XYBU5D#)*R"7GL'B4DE)3'T&4#HC%,MIGMR,YU-%4@>)<^X2R/
M%+SE&6T#E5XOM.['30Y2K"[N^R;_/$!Y:&UXQOF/K]]\>'U!!) QUI"\IAI3
MU7I+TFX^V6GJLP=U'XM%;;CSJZ9H%L-56I;BG[06 U\B".;A3)5J+!(13Y.=
ML_JX,%M.%'+%U5W'"2-=K,Q&MLD_\T)<Y2+ "!RPX@\NN%%(1(D[Q0@Y=M$"
MF(QI6&_UB(9*:OB,%5_86<_!JLB2JKT:8$PB*(;' A!VQVU:8(#A/X'5E&MC
M8$T*JNF$R_J<%QMFT'@4W%B:@FGQ#M+FJN^6]>V$P6L\@MU:$@\P*4=LH9;M
M6F:;87^7(3!;6)^\1F_%_!6]''H5P1['S/$6 0]'@J^!1@5UZ.HTIW1+APT*
M.\>+8WHI4@33/<:%4"MEB\H/$JBR2>_@:0TCE[>.:Y).Q(@98>!*$U([$"LZ
MU#@"QQ_ FR#<&T0E#GV34\&!'4Y$-FL#"2E<ZJ5-&R;"^)Q3Z=%$UQ.@]L <
MVV@K[JEJ>P1T7!*(:,8<KVZ [W*OR5\-NX+AYX_D6KW[/(95WWWG,N"%+^">
M96>+C?0W*L2N)7Q34M$&G#@PPC.'SZFDE%LAD=>"TO@1,-PD)YG8"&M.)4-%
MQ6[M9"3%.<THM( 6):/E..6>-,-Q0NOJ>ZA/\K<V&<[[+F]*3X.JU+Z^+VTF
M6C.Z7]ENR9+*Q!1<I:"Z/#.K:PT.^0 TN&.Q4\UKGW8D<<MFJ5'B5SF1QYQ
M5%N-OY@O],8/OZ0P3/!Q3P$NYY?7'R_PU=D@PJHPSCP$AS4@OW$R>(ENQ(?@
M@WCU2.*3C@5OG31AFT@,G['H+%.(Z%<*7?8R=*S<X2$)!5%1W!A,GO+DVJ6(
M$A-5>\O=[)F=O;'X"VRSJNE(O:VS*?8M)<.A$8630$HSP8D.I):9ZJO,K2NY
M\U-12X,60?0FO<MV.PE9DPKU))2Q\?C%TUK"M^PA"<XHFYY,YHX'M%Y#:V/2
M<I^AV,/@I8TW(^F+@IFQPFT*T@07GE:YI"PG&M\PN201JF.V\#\EI-^3[:R!
M4#;3L!?G5^!B*<V+9N42/8;S27<RJHT>,;L\FX6FI9/?FCZAD!2C-[@NY>(?
M'L5L]7;GQ)AI&)V$M-A@7'T8G!<I=3UL6EC7!AM.Q9:.YJU+U![(A\UAIL1T
MI0>;1!"4@/2,X'*0+':QUD>6'O%!*D7$2)EN* D#"659%B^Y<#^IAV+HH5#9
M>O4)]2#+=2Q$:G-]P[U/>6)KL38+:]D#+:\@,3U1";;<L+R2+*!WL:KNPM9
MHA^45%;;%R<%%/EO=-^ I&!<ICA]R*T1CHT+R,22[-+?@,)\3C<H#9.%NZY7
M B;1F3E-!B=]FC;#?V( NC$N^F_\!)B:K.Z/@*Z(K[^T/FBT44[M@ILVM027
M6"O[D;!FVXX[^25;$Z4MP>&BUFQL29=KE3R&OAE**#L8G4C<40>K>GNS3QXS
MNQD<1E".+KEUPH9\\,+7C 2:8',]NK3NJJG%<G'(5\W3;)C,.YB/'NGJ)=(\
MIHL;,P%O)C8G]1-6.FH!?4./"U=R:2L"(TO7)8:C>4S-:Z(YUAV8T.<9B,'X
M&:LIO'2U2<D9]ZGB?@NF5,AG%D8QM1(;8?>PT3RNP^UT(9KJRN9A/)G"O\MP
M/,6582!"1)^QKZJ?S(G6$..TI"(?-NHEAK<]_SF2-N40#KFF6 UF4EZ,SEFO
MJR7N^I%9_TVZ"K9"-:L>8U-93R8HDZWSM4HH.4>?T1*Y]Z;'TBQZ&O'1G.#.
MKQG$/E,,ECMRCO6#=., BCXP+]4SFEWOFI>?FAI4U![HBOFH/0O2ND'N>-D@
MKG>ES=A,FZ22@H/^]=$0VU';?3.MLT^@O8U;$P0_ Q/Q;YND.^B"LZ8V<6%B
MHPCNE*R.514P9PQ5?.R)989#S4$D-Z^"8'YBQU\>)!'W#WDAE00+!)KQI4L+
MV]"W6Z["2 XC1;%-=$@I1G05[V$"!QKP",."R2YZK;P'2@M[AT9>9![GYJ^+
M/H5 /U1D?[)\N")U#07T'E425%KC]"H,.C0-<SZ078:J?U.-1>[E"8/BF&28
MS96=62\5$VEVK+ZA[+O/C$E>JWH XRUYI+B-'V7A2(T>LMCKXABFJ$8@>66W
M&VOE]RH]XIMUWFS20ME/9R-G,U4L@@D7WH3::B0P$- AQ3YP5,7YN$>9T:J@
M%2@):2N?4PZKF)]MB4M;NL=E_LE>OP_.X_KS+04@JB42X>7QA0V+ME2_6F@"
M'IM<F&H3K4\9 W7+W-\3V3^?NN*\.))7%/,<%?WRHG,'2,EMH0L@,)6-7]4
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
MBW Y<B/]=-QEJVR/G4V]IV;A8N&V\=($S7!H!9P#RI(J =EN++)_*MQ]WG^
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
MS>^*9 ]Z2'")+J='>K:!,25W=RA]'M2N= HTS''GY@!L2:3KI&U/:O9/W82
M\'+TRAHUP@QFJQ+&;RA2HNEF3[<*B=22C..361B3D3(&FH/D"ND<W#F@!Y>P
MB6P%-'T*5Q2>F4[")=[\!5QAN ;1=!HNYW/K)[^Z!XF9/'K+63"&"3"\9,2Q
M>@N@:[.)Q.!>EED2D!5F#(P2B.$DF"]IZ.4H'+'[$(:)21%Q)'8&U&4TC1UE
M?0)ZO-/]PJXEU_/WP!';<NAA_X<>^8DV\&<4)+<D@AH!>T.>@JX3@'1$$LQT
M'$[@?/KV<E]$<&P+"LQCMH8'.H9_E^&,8EN>=+"6S,@)APCA2Y=>$:)O1J+M
MGQ#*4NN9UDS%:J&Z7Q!B*]Z'T_9UII:OI8>-E-SIM5RXG9/1PA,ME1!R#L<^
M78Y.6]67%$#2PZH.APB$HR:U8JJS)'=[6= OC6#0)NZZP#].EW[+LJF4GWSX
M"B%+)8UK,B2;3C?H>;S/.8F]*O4&OQCA([@4Z>.E-"^3ALGU!]@AQ;56V%Z(
M17$^8"@E#DYI+J"I&P*$CCD0ZE%<82MH907:3]&&92C)Q3,B_,-X O2<DW9C
MBH>83H>@OYAEKRFJ9HQ12-%B.)HA]MRFU!)-U5LZQUB0BV \QN'J*V@ (#D@
M(XH7&6+,ZI!$OC%R!Q"'978N@=\VQ"0<QT1A1BA3S88C,DP!SQH#CV+D*2GY
MV:[5MIK#;SN":Z(+E'>6%&(1+X>@VLV'%&$T!@EV/H_I"96_9FR79K*]I)DK
M'+1-Y1.K%XO2==SYK[GU':C*J>KNA1A/3M.AW5]]5UAA)-FLQ#( =).RM^DP
M=MK[RN>('MA"E66IKJ:6RF01V.#O90FW3E;SL63]^:7KMJ;C$BM7NS28UWBU
M50@AO*>OKDLSQ^KHJFZ',U.21=IMUC7"<12CIB<D;B/?E&._S\I?![<P'1]$
M/%P&?X+_3NB_[N^7MAMEAB4$@04\9%B@?#0<Q_ S_+/D?]0G^\ZG'*,,R!I.
M/TPB^(_[RSYWJ)"=*4P]'4;P_S'^OWI0/^<&7=ZG&"M!8_ 1"WW\<NK]':LZ
M,CCCP9=PYI.DVR V(:?V-_6FP0XL;10XIBB!^7 TMM3W[_S&>4S!W/03BFF-
M]+8Z0<,V.\QE78:FE[9(BV017ZNJ'WX!DTLX/9?6^MX9T-[Q"5 #AD>[HNB
M93ZO3(<Q+-Q@L7IFX7CZS?>_R>>DK/J^1>H/E-:KIB*0B">H#DT90<+%<L$Q
MEJ-)7TLU,%80O('#HSL9E#%@YAC&.>IGGT89$G,ZYD 7(M#/YU-DU0M2$Y=A
M1 9.&(ZD!\#F,5G'XG$XGM9B##^0#:%-W/,3Z1 &'W>9/:8R>"6%E/#C\9"#
M8.@"5+%VTGMA6HY*N#!?\WN(=T9L4_B=C5JIA2N1_==?#I5T\I9D:CN5=DFN
MRI,M[R1\M"IZUHUKM#AG+3<#A!67U3=%1V7'L^4"*0>QS\YCXBE39%CV+X*<
M9U2R7B0SIM@) WQ'_]^H*79\TYZ2>DB=SX.+/X$<MJ!_] <\:.DC9"@?_H8_
M53^C$EFDL@>S#A5Z9FIT<96^966(B?_YU&">\N%:&O,PLH,I[V.,_[#I9*U'
M12*!L4$Q/<;_C=Q_^8TJ'!O/%'] [C]#"2#XTTDAS[#,MF U$3CEZK2\WCJ+
MD<!*GH6$-R7#=C@9ON'=8!-QFW59EJZC8Z(Y!@\NX5]0E$&#PL\S.%O\C-:/
ME\[)C79D) *^E#LE#\$LC&(*<1]A5/L(M(\:W$Y;N*LKFX?Q!"C['-2M*:X,
M27I$GZ.XEI+75KU@$'QYG8+@_ 4:AC<7,!K&IYV?H5$:2^Z:4VZNC?"\^G5;
MAFEM,[4J!SK%NIZ,:\C<#WG#6FR2PP^8Y-"XTL$/G+S@VDK5Q"^;G- XAR0>
M-/[FL@H:?_["8@K_)]!9\_KH0W>,M=T\J@+#DZ8X%6Y5?5Z7(?@&RX6G3J#-
M[S-I-S+^/G/V1?'?9?(3%^=WVG''=?Q]9CQQR?4@/$=H2T0\Z7KU*;K1GT5\
MO6(;AE64_7G%[U/U(_BO-V@J?HW%K_^[.N4/ML*1] .I42_FP2V_FDH:_LE]
ME7-5  @]LX9U*]?RC?^>_1X+D7(='W2*S)LW5\%__40BV'__+G/VK<I1$T>:
MD[!M6B_'::$$F+ %)6M/'ZV\ZKJP]GBW[P8&P9,*B#Q>#GN1KH;&H#7K,BE=
MUG-<':?HO$NXZG9IB;IU&IQY.KAZ%YQP(.H&#.@20ZM&M"#1I=?KLQE/5#X\
M(=G)IQB?&FE@HW"K61FR4RI208ZGCA3HRDM4PN'4.[YDTGNJVFN])JO(7KUG
MJ[_7:[H6":@_/%O?[S5]10;J/6W]O5[35621WM/5W^MWEKUO\=<KC='WFKM[
M%08;75J";0_5QS]6[VFOM_0D]B$T'-YQ#$Z/6?J\QB''[6HP_WZ2U/0_KJ>7
M9.A[/%(- <MD YAKOPYB=G%5?\":"8T_8 F%QA^PHD+C#UA@H?$'G3$/_*<Y
MS?[Q#-E+EJ_9VOQ,^0:KB$J6[Y$,_WA1'-LBI8,W<.;K>G)QIQC0E,A=(Z,M
M>=TUCV4MS?MQ"PTQW#1LS($&H9K3B2D#V>+U?UW>E&27J.VK+16YP6<FZ<4U
M&:PI0[W.V)J2TFM/-2:D-SA\&[+1>R4Z#X(3*<U];_9/TE="DAXYVDWB_-S
M%- * /VO]_EF8S)V:T?P^#SF&KJ<3FBNO=(5@-4W35E@U2E\7F$;V[RH.=];
MQM1M@EW37Q5JUWU-?SZ2 9W4&#<H-E&OS]^=GE%7BG_+ML<M4/+=W>&>G'/9
M5IK=<KZ&J83,W]6H_:*%O?;)%6F^M?B,+?&#U[>:'J*27(+SXSXXY+6SFDR#
M=?+0]\0'08\4=,TU^FP._5?CV>1[[\*%_&U4_S::3:M?GGW1YV[TO6S4G;QG
MKG\\_<Q?W_TC..?%=S_XM_>_X(.T]^XG/_QR>MJ7']_+:)/Z:%I[GK=LU'NF
M9:/>,UT;]1[LW*CW9,M&O6?Z;[1%&Z8* ZS( T)C!#W9J/#KCLO118O>=F6I
M5Q_6E0OJ C5% /P-!EKGVY"+%M1&X&(%#Z'4*JC^[,H3U&,D_&H$=8EZEZR3
M4'YM,#C[E0=JOW_.#O]*"VR'&7+=@?[4YJM7'7B*B<G24&^@KI-_4<E9[_C=
MUEM^"EL %=8DWKS4B3=L][^2Q)OF?/R>XYN<'#-^?T91+0CP>-"?SFX_]<9M
M _"[4]$?LX8.7T2/-/;>D.R1U?XE:-T^:!>*?\L$X<>*;HRV=EZY#0U-1&6C
MI$]1\[3DM]KY?WF&^Q.6;S0)23TYO:AOE=#^A+VXD,$7U9#!ERIDL)W G)S!
M!A7^J(,*+_V@PB\8W^A*MK111SV)/O?JO9?G;?K9OE9IZ^]4VKID[;S\31J#
M<J*9>91ZB'W@[FJ$QT^D\X_9XR/3UNO*2SW_G)HU2JN3MJ3M9GO/GTUP$<R-
M@M))\;X[C3TOQ$30EL3>216;DV8;[$2MK;U 0IT,1DLD8:TNT5, ]%-['V\F
M4SF^_Z>S#YDLMM_ZS+<OO$Q&E3W[\(2EJL%L##A/TW5,G)):]X=QYFE=!%"I
MIC4AWR:7?B$4&I-$GP"1[GS43K!4#5G=":LZ._/:9&?:>:Y-=F8_L%Q*%A,L
M55?D>?SVKTQWL5NVB?W_O5U9;Q,Q$'Z&7V'Q5*0D))NC+1*5*J@02!Q"B/<E
M7=%([6:U:0J5^/%X/+;7ZQD?F[8\M=W:8WM\C>?XQKZX\OKA!WW:V!&G*_F:
M04(MK@A,!&92C?C@^$S*!"Y.,]XOZJ9*UU$J_#)'<:CG^U>[W3?=,;]CO7C/
MFW8BIK.HN?L+I"&<]I4 '5V>8A%5&83"4MPH8=C:;CF;:UBI V*[\8=.F8HJ
MWY&;\U73\D.21KRI!ZU0*?*@S1Q&-V"D>@\3YJ1+JX3-"-ML&^.A_5>HB24G
MLPV7*^L:5.=^B"#F:?6B%>&C?%1MY(\;FVO-)WTRF4Z)D_GA[0$V'8K6-B,R
M87S!-6FVK3BZK/"WERJO(A-G1&P:OM.UBD$<J[O8B56$7,?B$K4U"HY$+7')
M\O!RQ^?<QH:412RPT:!(8!157SD2XI!A"C-,'5J%*=\Z8OQ"%\?&UCR;LKKM
M[TYLA+HE<_KDR.RZ-Y@3T4F:2#8"OD;ZD>1?Y5$:WXJXFMU C4;6H29??O=U
ML7-.J^S!Y0#_JR8Q5S;F0*;-R]7#KYP+" <L3<I#U7_@J<F\3?1:<E+8CB<O
MC9Z7%!N=[QKOF&=!]^$P4P"Y,WB&L)&=$=VP[5B(PSHX,UG.ALLG2W+QG+GD
MG7AX?-_ RL7DYPD"V>'P ^FF\ [R>!\^&RW_!Y^JSHP,KLO/T:%=B,P:"93J
M<^^ -@_%EW@"FM&Y-Z7\0MIE1BS-15+,V8O$X6V8V$H36[ DTGLBW<V%O>_X
M;N:&C*=X91:!G*84)R)%,T<<H9!Q4SP%0$3PU=+'3O#_6TQ.J0Q83!:,+,J#
M*_C% %V!U 6LA3#!#GF!R/"GG(BZF+&R<@"@P2^W]-=EP:]]4VZ&Y<0J6FIN
M5_D)6RYC5>0C1?04#Z3P8TD7MC^I*T[\N;E^O6O*=?7FA;(?M7?5BS/!R9$9
M%WD29"+2S\%WP8^'5>3V?P;PQ&&GQE-B4 RWT#UZ#Z)1#AH#(F!P>J -)\=
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
M_A5.;V%[!G=[8YC[:;]EB1/W GI=%X4+Q+7ZHKG;WISC\/GL^;]02P,$%
M  @ '(%=36SIKSXS @  RR<  !H   !X;"]?<F5L<R]W;W)K8F]O:RYX;6PN
M<F5L<\7:.V[;0!2%X:T(7(!'<Q]C.[!<I7&;9 .$-'K $DEP&,3>?1@U80";
M)X5PV$@0*-S[5Q^((9^^Y7,]G-JF'$]=6;U=SDW95,=AZ+Z$4+;'?*G+7=OE
M9KRR;_M+/8P_^T/HZNUK?<A!UNL4^NF,ZOEI.G/ULMM4_<LN5JL?=7_(PZ8*
M;^?PJ^U?RS'GH83K5[P;%XQ_>>_R_ZQO]_O3-G]MMS\ON1D^J/B[H H?!\E\
MD-"#=#Y(Z4$V'V3T()\/<GI0F@]*]*#[^:![>M##?- #/>AQ/NB1'A370,8U
M/PEAS=<Z JXCW^L(P(Y\L2,@._+-C@#MR%<[ K8CW^T(X(Y\N2.@._+MC@#O
MR-=;@-["UUN WK+ O3:ZV>;K+4!OX>LM0&_AZRU ;^'K+4!OX>LM0&_AZRU
M;^'K+4!OX>NM0&_EZZU ;^7KK4!O7>"L!!V6\/56H+?R]5:@M_+U5J"W\O56
MH+?R]5:@M_+U5J"W\O4VH+?Q]3:@M_'U-J"W\?4VH+<M<-:-#KOY>AO0V_AZ
M&]#;^'H;T-OX>AO0V_AZ&]#;^'H[T-OY>CO0V_EZ.]#;^7H[T-OY>CO0VQ=X
M5HD>5O+U=J"W\_5VH+?S]7:@M_/U=J"W\_5.0._$USL!O1-?[P3T3GR]$] [
M\?5.0._$USL!O=,"[YJ@ETWX>J>)WN58]WGW?>A/S:'<NN2?X9_63. NP_LY
MWS[C.O73_1.EAW%+#M?/FZMSG?HG(DPKRO-O4$L#!!0    ( !R!74V!IOXX
M^0$  !@G   3    6T-O;G1E;G1?5'EP97-=+GAM;,W:RT[C,!0&X%>ILD6-
MZRL743; =@9I> &3G#91D]BR#92W'R=<)%"1BFBE?],T.<XY?U+K6_7R_L53
MG&W[;HC+HDG)7S 6JX9Z&TOG:<B5E0N]3?DTK)FWU<:NB8G%PK#*#8F&-$]C
MC^+J\H96]K%+L^O7ZV/K96&][]K*IM8-[&FHOS2=OS4L W73FMBT/I[D!<7L
M=IN[Q'QM6>1J+-@>$[[>.)[G^_X^40AM33^*YE:KMJ+:58]]OJ6,/I"M8T.4
M^JZ,C0U4_TNA'=9O>>]L2']LGQNS;<<^+2B/ER.]=+0[P%0YY.24MP7M&C45
M7C_YKP:^[X;*!9K[D*LAM3L>+T>ZR]7(QH6'?$0:MTY-]5[#<^OC_;#/+FRF
M[[M>^$<QLNGPN[=^N!P")(<$R:% <FB0' 8DQRE(CC.0'.<@.?@")0B*J!R%
M5(YB*D=!E:.HRE%8Y2BN<A18.8JL D56@2*K0)%5H,@J4&05*+(*%%D%BJP"
M15:!(JM$D56BR"I19)4HLDH4626*K!)%5HDBJT215:+(JE!D52BR*A19%8JL
M"D56A2*K0I%5H<BJ4&15*+)J%%DUBJP:15:-(JM&D56CR*I19-4HLFH4636*
MK 9%5H,BJT&1U:#(:E!D-2BRFB/*.AW+WK;#=TD>G-N\SV?3'^*N_@-02P$"
M% ,4    "  ;@5U-'R// \     3 @  "P              @ $     7W)E
M;',O+G)E;'-02P$"% ,4    "  ;@5U-)^B'#H(   "Q    $
M    @ 'I    9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    ( !N!74WI/-T5
M[P   "L"   1              "  9D!  !D;V-0<F]P<R]C;W)E+GAM;%!+
M 0(4 Q0    ( !N!74V97)PC$ 8  )PG   3              "  ;<"  !X
M;"]T:&5M92]T:&5M93$N>&UL4$L! A0#%     @ &X%=3</ ,[1$ @  6P<
M !@              ( !^ @  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM;%!+
M 0(4 Q0    ( !N!74TF;#5B8 0  .(3   8              "  7(+  !X
M;"]W;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4    "  ;@5U-5/ZOJU@#
M  #@#0  &               @ $($   >&PO=V]R:W-H965T<R]S:&5E=#,N
M>&UL4$L! A0#%     @ &X%=34KZ?+ _ @  &P<  !@              ( !
MEA,  'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4 Q0    ( !N!74U/
M4. E6P0  * 4   8              "  0L6  !X;"]W;W)K<VAE971S+W-H
M965T-2YX;6Q02P$"% ,4    "  ;@5U-[D9 ?/\!  "(!0  &
M    @ &<&@  >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL4$L! A0#%     @
M&X%=3:#=%37)!   -1<  !@              ( !T1P  'AL+W=O<FMS:&5E
M=',O<VAE970W+GAM;%!+ 0(4 Q0    ( !N!74V72:'14P,  -\-   8
M          "  = A  !X;"]W;W)K<VAE971S+W-H965T."YX;6Q02P$"% ,4
M    "  ;@5U-]A=8Q@D"  "+!0  &               @ %9)0  >&PO=V]R
M:W-H965T<R]S:&5E=#DN>&UL4$L! A0#%     @ &X%=39CPDA^T 0  TP,
M !D              ( !F"<  'AL+W=O<FMS:&5E=',O<VAE970Q,"YX;6Q0
M2P$"% ,4    "  ;@5U--T.DO+$!  #3 P  &0              @ &#*0
M>&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0    ( !N!74T[>%TH
MM0$  -,#   9              "  6LK  !X;"]W;W)K<VAE971S+W-H965T
M,3(N>&UL4$L! A0#%     @ &X%=32VL]<NU 0  TP,  !D
M ( !5RT  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q02P$"% ,4    "  ;
M@5U-38P[8+8!  #1 P  &0              @ %#+P  >&PO=V]R:W-H965T
M<R]S:&5E=#$T+GAM;%!+ 0(4 Q0    ( !N!74TVIY\1M0$  -,#   9
M          "  3 Q  !X;"]W;W)K<VAE971S+W-H965T,34N>&UL4$L! A0#
M%     @ &X%=38,7MH6U 0  TP,  !D              ( !'#,  'AL+W=O
M<FMS:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    "  ;@5U-CBKL<[4!  #3
M P  &0              @ $(-0  >&PO=V]R:W-H965T<R]S:&5E=#$W+GAM
M;%!+ 0(4 Q0    ( !N!74WTZ81.M0$  -,#   9              "  ?0V
M  !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#%     @ &X%=305T
M0U2U 0  TP,  !D              ( !X#@  'AL+W=O<FMS:&5E=',O<VAE
M970Q.2YX;6Q02P$"% ,4    "  ;@5U-D<)@?K8!  #3 P  &0
M    @ ',.@  >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM;%!+ 0(4 Q0    (
M !N!74UEV,:-M $  -,#   9              "  ;D\  !X;"]W;W)K<VAE
M971S+W-H965T,C$N>&UL4$L! A0#%     @ &X%=3?5,J\:T 0  TP,  !D
M             ( !I#X  'AL+W=O<FMS:&5E=',O<VAE970R,BYX;6Q02P$"
M% ,4    "  ;@5U-37V&J;8!  #3 P  &0              @ &/0   >&PO
M=V]R:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    ( !N!74UHS^Y%QP$
M #@$   9              "  7Q"  !X;"]W;W)K<VAE971S+W-H965T,C0N
M>&UL4$L! A0#%     @ &X%=36RZ4IS# 0  . 0  !D              ( !
M>D0  'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"% ,4    "  ;@5U-
M<&Q8$.(!   "!0  &0              @ %T1@  >&PO=V]R:W-H965T<R]S
M:&5E=#(V+GAM;%!+ 0(4 Q0    ( !N!74VC_BOEN $  -,#   9
M      "  8U(  !X;"]W;W)K<VAE971S+W-H965T,C<N>&UL4$L! A0#%
M  @ &X%=3=4\9QG& 0  . 0  !D              ( !?$H  'AL+W=O<FMS
M:&5E=',O<VAE970R."YX;6Q02P$"% ,4    "  ;@5U--^ZI0+<!  #3 P
M&0              @ %Y3   >&PO=V]R:W-H965T<R]S:&5E=#(Y+GAM;%!+
M 0(4 Q0    ( !N!74V/!M) W0$   (%   9              "  6=.  !X
M;"]W;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%     @ &X%=3::=3/;B
M 0   @4  !D              ( !>U   'AL+W=O<FMS:&5E=',O<VAE970S
M,2YX;6Q02P$"% ,4    "  ;@5U-SKM"M]\!   "!0  &0
M@ &44@  >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+ 0(4 Q0    ( !N!
M74USJ;N7M0$  -,#   9              "  :I4  !X;"]W;W)K<VAE971S
M+W-H965T,S,N>&UL4$L! A0#%     @ &X%=32YA*NVX 0  TP,  !D
M         ( !EE8  'AL+W=O<FMS:&5E=',O<VAE970S-"YX;6Q02P$"% ,4
M    "  ;@5U-G?8I^*$#  !-$P  &0              @ &%6   >&PO=V]R
M:W-H965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    ( !N!74U2O;EXA0(  .L(
M   9              "  5U<  !X;"]W;W)K<VAE971S+W-H965T,S8N>&UL
M4$L! A0#%     @ &X%=32*=",4P @  = 8  !D              ( !&5\
M 'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4    "  ;@5U-C+=V
M,=@#  #U$0  &0              @ & 80  >&PO=V]R:W-H965T<R]S:&5E
M=#,X+GAM;%!+ 0(4 Q0    ( !N!74U;P*D/:P4  ! C   9
M  "  8]E  !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL4$L! A0#%     @
M&X%=39=OV03U P  3Q0  !D              ( !,6L  'AL+W=O<FMS:&5E
M=',O<VAE970T,"YX;6Q02P$"% ,4    "  ;@5U-1O-V7HX$   '&@  &0
M            @ %=;P  >&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM;%!+ 0(4
M Q0    ( !N!74U$7DG7 P(  'D%   9              "  2)T  !X;"]W
M;W)K<VAE971S+W-H965T-#(N>&UL4$L! A0#%     @ '(%=3?";7(?M P
MGQ0  !D              ( !7'8  'AL+W=O<FMS:&5E=',O<VAE970T,RYX
M;6Q02P$"% ,4    "  <@5U-&>P;T04"  !N!0  &0              @ &
M>@  >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4 Q0    ( !R!74U)
MMX<&_ $  *0%   9              "  ;Q\  !X;"]W;W)K<VAE971S+W-H
M965T-#4N>&UL4$L! A0#%     @ '(%=3:!;"_#> P  ?1,  !D
M     ( ![WX  'AL+W=O<FMS:&5E=',O<VAE970T-BYX;6Q02P$"% ,4
M"  <@5U-:7+B+PH"  !M!@  &0              @ $$@P  >&PO=V]R:W-H
M965T<R]S:&5E=#0W+GAM;%!+ 0(4 Q0    ( !R!74VMYM$,$ (  &X&   9
M              "  46%  !X;"]W;W)K<VAE971S+W-H965T-#@N>&UL4$L!
M A0#%     @ '(%=35.#"XO_ @  @PT  !D              ( !C(<  'AL
M+W=O<FMS:&5E=',O<VAE970T.2YX;6Q02P$"% ,4    "  <@5U-##S@6L\$
M  ![%P  &0              @ '"B@  >&PO=V]R:W-H965T<R]S:&5E=#4P
M+GAM;%!+ 0(4 Q0    ( !R!74V%K^'II0(  , )   9              "
M <B/  !X;"]W;W)K<VAE971S+W-H965T-3$N>&UL4$L! A0#%     @ '(%=
M3<A"#)WL @  (PL  !D              ( !I)(  'AL+W=O<FMS:&5E=',O
M<VAE970U,BYX;6Q02P$"% ,4    "  <@5U-/0UEJX8"  !;"   &0
M        @ ''E0  >&PO=V]R:W-H965T<R]S:&5E=#4S+GAM;%!+ 0(4 Q0
M   ( !R!74TQ[A=@M $  -,#   9              "  828  !X;"]W;W)K
M<VAE971S+W-H965T-30N>&UL4$L! A0#%     @ '(%=353 O"<' @  <04
M !D              ( !;YH  'AL+W=O<FMS:&5E=',O<VAE970U-2YX;6Q0
M2P$"% ,4    "  <@5U-5W'?]<4#  #8$   &0              @ &MG
M>&PO=V]R:W-H965T<R]S:&5E=#4V+GAM;%!+ 0(4 Q0    ( !R!74T!DL.0
M& ,  &X,   9              "  :F@  !X;"]W;W)K<VAE971S+W-H965T
M-3<N>&UL4$L! A0#%     @ '(%=3=LUR.)/ @   0@  !D
M ( !^*,  'AL+W=O<FMS:&5E=',O<VAE970U."YX;6Q02P$"% ,4    "  <
M@5U-#<JW[7("  ##"   &0              @ %^I@  >&PO=V]R:W-H965T
M<R]S:&5E=#4Y+GAM;%!+ 0(4 Q0    ( !R!74W<-_W?L@(  *L)   9
M          "  2>I  !X;"]W;W)K<VAE971S+W-H965T-C N>&UL4$L! A0#
M%     @ '(%=32QQMO*Q @  0@H  !D              ( !$*P  'AL+W=O
M<FMS:&5E=',O<VAE970V,2YX;6Q02P$"% ,4    "  <@5U-V-BQV=$"   I
M#   &0              @ 'XK@  >&PO=V]R:W-H965T<R]S:&5E=#8R+GAM
M;%!+ 0(4 Q0    ( !R!74W+&N\YC ,  %<1   9              "  0"R
M  !X;"]W;W)K<VAE971S+W-H965T-C,N>&UL4$L! A0#%     @ '(%=3<4>
M>WX3 @  G04  !D              ( !P[4  'AL+W=O<FMS:&5E=',O<VAE
M970V-"YX;6Q02P$"% ,4    "  <@5U-8%MHNU@"  !,!P  &0
M    @ $-N   >&PO=V]R:W-H965T<R]S:&5E=#8U+GAM;%!+ 0(4 Q0    (
M !R!74U/T7-^S@$  ) $   9              "  9RZ  !X;"]W;W)K<VAE
M971S+W-H965T-C8N>&UL4$L! A0#%     @ '(%=3>B%SE,&>0  KNT! !0
M             ( !H;P  'AL+W-H87)E9%-T<FEN9W,N>&UL4$L! A0#%
M  @ '(%=371MNV>) @  'P\   T              ( !V34! 'AL+W-T>6QE
M<RYX;6Q02P$"% ,4    "  <@5U-[,*04@\%  #"*P  #P
M@ &-. $ >&PO=V]R:V)O;VLN>&UL4$L! A0#%     @ '(%=36SIKSXS @
MRR<  !H              ( !R3T! 'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR
M96QS4$L! A0#%     @ '(%=38&F_CCY 0  &"<  !,              ( !
M-$ ! %M#;VYT96YT7U1Y<&5S72YX;6Q02P4&     $L 2P!_%   7D(!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>80
<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>82
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.10.0.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>178</ContextCount>
  <ElementCount>290</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>65</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>12</UnitCount>
  <MyReports>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0001000 - Document - Document and Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DocumentAndEntityInformation</Role>
      <ShortName>Document and Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>1001000 - Statement - Consolidated Statements of Operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedStatementsOfOperations</Role>
      <ShortName>Consolidated Statements of Operations</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>1002000 - Statement - Consolidated Statements of Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncome</Role>
      <ShortName>Consolidated Statements of Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>1002501 - Statement - Consolidated Statements of Comprehensive Income (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedStatementsOfComprehensiveIncomeParenthetical</Role>
      <ShortName>Consolidated Statements of Comprehensive Income (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>1003000 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedBalanceSheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>1003501 - Statement - Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>1004000 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedStatementsOfCashFlows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>1005000 - Statement - Consolidated Statement of Shareholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquity</Role>
      <ShortName>Consolidated Statement of Shareholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>1005501 - Statement - Consolidated Statement of Shareholders' Equity (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedStatementOfShareholdersEquityParenthetical</Role>
      <ShortName>Consolidated Statement of Shareholders' Equity (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>2101100 - Disclosure - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/SummaryOfSignificantAccountingPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>2103100 - Disclosure - New Pronouncements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/NewPronouncements</Role>
      <ShortName>New Pronouncements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>2104100 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/FairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>2105100 - Disclosure - Cash, Cash Equivalents, and Investments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsAndInvestments</Role>
      <ShortName>Cash, Cash Equivalents, and Investments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>2106100 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/Inventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>2109100 - Disclosure - Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/IntangibleAssets</Role>
      <ShortName>Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>2110100 - Disclosure - Warranty Obligations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WarrantyObligations</Role>
      <ShortName>Warranty Obligations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>2111100 - Disclosure - Derivative Instruments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstruments</Role>
      <ShortName>Derivative Instruments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>2112100 - Disclosure - Revenue Recognition</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognition</Role>
      <ShortName>Revenue Recognition</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>2113100 - Disclosure - Stock-Based Compensation Expense</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpense</Role>
      <ShortName>Stock-Based Compensation Expense</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>2115100 - Disclosure - Stock Repurchase Program</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockRepurchaseProgram</Role>
      <ShortName>Stock Repurchase Program</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>2116100 - Disclosure - Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/Taxes</Role>
      <ShortName>Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>2119100 - Disclosure - Weighted-Average Shares</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WeightedAverageShares</Role>
      <ShortName>Weighted-Average Shares</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>2120100 - Disclosure - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/SubsequentEvents</Role>
      <ShortName>Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>2201201 - Disclosure - Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/SummaryOfSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.cognex.com/role/SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>2304301 - Disclosure - Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/FairValueMeasurementsTables</Role>
      <ShortName>Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/FairValueMeasurements</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>2305301 - Disclosure - Cash, Cash Equivalents, and Investments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsTables</Role>
      <ShortName>Cash, Cash Equivalents, and Investments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/CashCashEquivalentsAndInvestments</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>2306301 - Disclosure - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/InventoriesTables</Role>
      <ShortName>Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/Inventories</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>2309301 - Disclosure - Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/IntangibleAssetsTables</Role>
      <ShortName>Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/IntangibleAssets</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>2310301 - Disclosure - Warranty Obligations (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WarrantyObligationsTables</Role>
      <ShortName>Warranty Obligations (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/WarrantyObligations</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>2311301 - Disclosure - Derivative Instruments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstrumentsTables</Role>
      <ShortName>Derivative Instruments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/DerivativeInstruments</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>2312301 - Disclosure - Revenue Recognition (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionTables</Role>
      <ShortName>Revenue Recognition (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/RevenueRecognition</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>2313301 - Disclosure - Stock-Based Compensation Expense (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseTables</Role>
      <ShortName>Stock-Based Compensation Expense (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/StockBasedCompensationExpense</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>2316301 - Disclosure - Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/TaxesTables</Role>
      <ShortName>Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/Taxes</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>2319301 - Disclosure - Weighted-Average Shares (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WeightedAverageSharesTables</Role>
      <ShortName>Weighted-Average Shares (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/WeightedAverageShares</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>2404402 - Disclosure - Fair Value Measurements - Assets and Liabilities Measured at Fair Value on a Recurring Basis (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/FairValueMeasurementsAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetail</Role>
      <ShortName>Fair Value Measurements - Assets and Liabilities Measured at Fair Value on a Recurring Basis (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>35</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>2404403 - Disclosure - Fair Value Measurements - Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/FairValueMeasurementsLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationDetails</Role>
      <ShortName>Fair Value Measurements - Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>2405402 - Disclosure - Cash, Cash Equivalents, and Investments (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsDetail</Role>
      <ShortName>Cash, Cash Equivalents, and Investments (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsTables</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>2405403 - Disclosure - Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsComponentsOfCashCashEquivalentsAndInvestmentsDetail</Role>
      <ShortName>Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>38</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>2405404 - Disclosure - Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsSummaryOfAvailableForSaleInvestmentsDetail</Role>
      <ShortName>Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>2405405 - Disclosure - Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsGrossUnrealizedLossesAndFairValuesForAvailableForSaleInvestmentsDetail</Role>
      <ShortName>Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>2405406 - Disclosure - Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsAndInvestmentsEffectiveMaturityDatesOfAvailableForSaleInvestmentsDetail</Role>
      <ShortName>Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>2406402 - Disclosure - Inventories - Schedule of Inventories (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/InventoriesScheduleOfInventoriesDetail</Role>
      <ShortName>Inventories - Schedule of Inventories (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>2409402 - Disclosure - Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/IntangibleAssetsDetails</Role>
      <ShortName>Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/IntangibleAssetsTables</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>2410402 - Disclosure - Warranty Obligations - Changes in Warranty Obligations (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WarrantyObligationsChangesInWarrantyObligationsDetail</Role>
      <ShortName>Warranty Obligations - Changes in Warranty Obligations (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>2411402 - Disclosure - Derivative Instruments (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstrumentsDetail</Role>
      <ShortName>Derivative Instruments (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/DerivativeInstrumentsTables</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>2411403 - Disclosure - Derivative Instruments - Outstanding Forward Contracts Table (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetail</Role>
      <ShortName>Derivative Instruments - Outstanding Forward Contracts Table (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>2411404 - Disclosure - Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstrumentsScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueDetail</Role>
      <ShortName>Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>2411405 - Disclosure - Derivative Instruments - Offsetting Assets (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetail</Role>
      <ShortName>Derivative Instruments - Offsetting Assets (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>2411406 - Disclosure - Derivative Instruments - Derivative Instruments, Gain (Loss) (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetail</Role>
      <ShortName>Derivative Instruments - Derivative Instruments, Gain (Loss) (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>2412402 - Disclosure - Revenue Recognition - Impact on Statement of Operations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionImpactOnStatementOfOperationsDetails</Role>
      <ShortName>Revenue Recognition - Impact on Statement of Operations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>2412403 - Disclosure - Revenue Recognition - Impact on Balance Sheet (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionImpactOnBalanceSheetDetails</Role>
      <ShortName>Revenue Recognition - Impact on Balance Sheet (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>2412404 - Disclosure - Revenue Recognition - Revenue Disaggregated by Geography (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByGeographyDetails</Role>
      <ShortName>Revenue Recognition - Revenue Disaggregated by Geography (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>2412405 - Disclosure - Revenue Recognition - Revenue Disaggregated by Products and Services (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedByProductsAndServicesDetails</Role>
      <ShortName>Revenue Recognition - Revenue Disaggregated by Products and Services (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>2412406 - Disclosure - Revenue Recognition - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails</Role>
      <ShortName>Revenue Recognition - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>2412407 - Disclosure - Revenue Recognition - Deferred Revenue Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails</Role>
      <ShortName>Revenue Recognition - Deferred Revenue Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>2413402 - Disclosure - Stock-Based Compensation Expense (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseDetail</Role>
      <ShortName>Stock-Based Compensation Expense (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/StockBasedCompensationExpenseTables</ParentRole>
      <Position>56</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>2413403 - Disclosure - Stock-Based Compensation Expense - Summary of Stock Option Activity (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseSummaryOfStockOptionActivityDetail</Role>
      <ShortName>Stock-Based Compensation Expense - Summary of Stock Option Activity (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>2413404 - Disclosure - Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedInEstimatingFairValuesOfStockOptionsGrantedDetail</Role>
      <ShortName>Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>2413405 - Disclosure - Stock-Based Compensation Expense - Nonvested Restricted Stock Shares Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseNonvestedRestrictedStockSharesActivityDetails</Role>
      <ShortName>Stock-Based Compensation Expense - Nonvested Restricted Stock Shares Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>2413406 - Disclosure - Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsDetail</Role>
      <ShortName>Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>2415401 - Disclosure - Stock Repurchase Program (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockRepurchaseProgramDetail</Role>
      <ShortName>Stock Repurchase Program (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/StockRepurchaseProgram</ParentRole>
      <Position>61</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>2416402 - Disclosure - Taxes - Reconciliation of United States Federal Statutory Corporate Tax Rate to Company's Effective Tax Rate, or Income Tax Provision (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/TaxesReconciliationOfUnitedStatesFederalStatutoryCorporateTaxRateToCompanysEffectiveTaxRateOrIncomeTaxProvisionDetail</Role>
      <ShortName>Taxes - Reconciliation of United States Federal Statutory Corporate Tax Rate to Company's Effective Tax Rate, or Income Tax Provision (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>2416403 - Disclosure - Taxes (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/TaxesDetail</Role>
      <ShortName>Taxes (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/TaxesTables</ParentRole>
      <Position>63</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>2419402 - Disclosure - Weighted-Average Shares (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WeightedAverageSharesDetail</Role>
      <ShortName>Weighted-Average Shares (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/WeightedAverageSharesTables</ParentRole>
      <Position>64</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>2419403 - Disclosure - Weighted-Average Shares - Calculation of Weighted-Average Shares (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WeightedAverageSharesCalculationOfWeightedAverageSharesDetail</Role>
      <ShortName>Weighted-Average Shares - Calculation of Weighted-Average Shares (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="cgnx-20180930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>2420401 - Disclosure - Subsequent Events (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/SubsequentEventsDetails</Role>
      <ShortName>Subsequent Events (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/SubsequentEvents</ParentRole>
      <Position>66</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File>cgnx-20180930.xml</File>
    <File>cgnx-20180930.xsd</File>
    <File>cgnx-20180930_cal.xml</File>
    <File>cgnx-20180930_def.xml</File>
    <File>cgnx-20180930_lab.xml</File>
    <File>cgnx-20180930_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy>http://fasb.org/us-gaap/2017-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/currency/2017-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/country/2017-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/dei/2014-01-31</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>84
<FILENAME>0000851205-18-000016-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000851205-18-000016-xbrl.zip
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
M]_?&S;#Z[MY0OJ\^/V5&O_^N537;MXV;_G]\_PK_&@4!C>;@E91):*&CL"1
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
M*'BYDX*6@[ %G?O@=,5*$@:Z)/>5XU3DG0+""4YC%%K+@(;/%K$=@IAB%N^
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
MWJ"55212<'D3DU>:0 Y]$DU&RUB&/FCRMD,4^Q/9"T2(,J: @-W2) QZQF1
M&RJ8\)*#9% LA6QP+M4Q2^DY7I+RP#3SCBLE(1!BN$3L9;00&&Q[,N>4@O5/
MHSH%F6T9+7*436 !,/S)K4=1VXP) 4![*UB)+38Z@^H4Q+99(RN$J2Y%R50N
MP5/<$@R>'0<,>Y2',K9>?SOF*8AJ.R?) PCEI9",!,"?3JC(N=5*)P:$E\>&
MKG_>U"D(;0L?&?-6( L8=6,P[< **6CVD;DY _Y:S,E-3IEZGLA>][K]_OO[
M'9.O&^W.S*IX& $*_MO',,D<F;32*H44:$(MR+ME06M$Z$%'JJW(FQL+WM:N
M#2EIVRE/?RSF":-[H[SUR%%$6,-,[M0.J.@I<0QLRVW":Y<$[9,GO72<<'YF
M8(9XU4H@3!NNM8HF5\8YX+K$:2M.5'XQGI:,DXF:&0^4^\@A=X0>M?0 :Q4.
MG1!%C+/J6.X=\Y1W(,^6F:R>4%H# AZGF 6;!TJ[?&Z#0O/!0N2V,*]BJW$:
MT[9;II:,E'(N4!:33]8#<\0$HAF50G%/C2QSLVNO(^Z7J7)*3:,'9[QE!B-J
M<$!R+U(<*^TYY/ZOAI;U3>OBK+USM62H4K#*!*J"3^C>"3+(T ;R?'2""+X\
MJ6A]T+V"*S?LMSM5O^^[MY_:G4;>MS_>UX]!U@!_Z[=;56_TL>WU&OCIJ-[8
M7^=?WW3L;7?8&;S]O."6G]N-3^T;].IT'=6=+O>7AD6!"(>A>^-*HQLGPA&:
MPJABO$R93Z.=%V+K*"19:M9TU85R:*VT"RXY")(8E#U*-*"YIH;;HF#RU4P+
M_Z,6Y>/]>Z_9YWNNV5\<D0,8&J5'5^3!IJ!S>C7D>B,6$OBRN ]F(LLMI#DY
M&+YQUQZ,S4>^K8<TY>/71W9EPS)%KT8''GA"+?&(A"PB\J #(G)A1%GWS=E,
M+Y)EI&Q/\K(J#.<21*+R!D"3"S$BUP\D:R7+9JI2SQCF]4GN7V\F39LMGN0<
MY_5H3[1FZ/YRHW[(Y6=E?&.4@5G:^M>K:5@FGDB88R[O;^ 1)-$Z,$8 G)+Y
M*! ]IZQ2R)FVC_.(P&@P_\@1X1=T9CA9[, W>KUOJ+,+-J3+)9(2+B 0%TXR
MAH@!I&/!4B,<]2+'&H4O40;CPX+(E43M@ NU1-:(L3%\X'%T/'Q@UFHN)*-<
M6TH\)\5*#$($/A,BO1P;BP<CBI3[26 01"(H(FWNB 9))RV=HZ3<^I5/)V<'
M86/I44Z>6Q^HBRQ*9(-IH05+$I*QA#%19OR(FJT\VQ$;[ZI>N]MZTVGF!$D5
MJO'/C0%7R&=*>\9\/HV6YKU*00H6.0:K&*Z6QR-SQ-5Z#7[FD[<[ME:@'\34
M:(C0X3 0D%0^ LZCB<Y[24, 5@1V2J\S9=9@JGM[V^U\&'2;_PKM+^AA.ZU\
MUX?K1J_*#WO7:+?6"5+?_)JFZATQ(@TRQ!00"VB).N=SMEECV!#"[" ]O._[
MG\A?B& PP=4:U.V$FS^6<8,8%$-L):(+&,XQJ@GSN2U72H ^-HG%W%#V\MR4
M8>DT-Q#1+D<T;-X@_0DC['PL3$Q:,<?!\65C ^0 W"P=FWQ$<)(V=S,/P&,T
MUCN>$/PPG#[2A25CPW?$S;M&[VWOPR WVA^9PH?;5OJ;:4X$#D.(7 $Q^> W
M:5PNOA>(4] (@)5+QH6PN8PL(NS9?,PXG&D^J/?@O06$? XHSA9/G1+")LT0
MR9AE^K4;/D;?]>UP<-WM93R[X3AX%R0-Z.8M8D5EG?86.0*MC9 DZ4G;U1^]
MZ>$\X&E[O)B>K<E>*G8.#(FDD: W!.6LY191-K<T"JJ\37/(YKLC^TV_/UQ#
MTM,),B90Q#)W.?4@!8;XR0+Z<Q!H-J72<RBFBL]&C0M(V9;:I^6OK&\Y !ZO
M]^ S[KJ=$?"97H9]?/2JI=>\ER1@4(EV%YT(-S(ESWFDT1@GO'QY;I?"1LL,
M24QJ#)+ .W#HQXD/D08FA)SJA?I$+<-0?Y_4[FUL).-YROL8LJ6U.L?0B8.E
MGJ48_0)NJ:'/X'9DR=X.!_U!H]-"%+W9W$$Y:YL0"*-@P!+4(:)8$!:C5JF9
M+5+FLZ6G2PC9FM[E)\H2FPS#?W".@Y=HEG1$?.M"HEZ76ZKX3,NP]>F]ZU77
M5:??_E(A[.W>5K]6@[>?/S:^K@-B9QJ=(>)++' :(N0 @V+@Y"/G02$795$.
M)1CH%OJ_B)SG4+TTBQJ)S=EG@R,.$!'CC9: ='(V$$W+<^<85S,;S_=!]8JU
MDN259UH3):F'9!'[$&^HTV@C@S*VS'SH(G^U'Z*7B9I(:O-YZ4G*?(*.MT2!
M]8JIT0*^*NL!I2:PI:C[^.'K;K?5M[G:I_>EW:SZ'[HW:X5FTT2#A> \(;G]
MJ!+@//-$A<0-(D_FROH,3>2LI!<1\SR2G\K!6O\S[ ]&N>?4[?U:_6F;S9R<
MQ[G^KM?MX*_-<69ZNHCL\:(/V3 T>JW^[W<M]!,LU_F:F:SXHP?YT*PZ#0R2
MIY[UONH_?/]$S,I#<]$[&@=H*BCP?*@,LQ@=<NNX$D$7K1]!D1>6ZW*>'SY\
MUZN^M+O#_LVW]]5=MX>8>U6-9^X$'(GRQ@9!@^ (_\>,$T"T4*ZSH[.=!9U[
MX'QYLL7+&)!>B &<C(92+27@CQ DTE=N2V!YC\=+T'SBLX!RDPBS%"TYM\I'
MR&6M61DL.E CYC3,>I%I\,?^IP%U/%F1,-(U0G-/!,Z',>>>V#"GM)+-\0:[
M9GV%VS6:)$ISX4&>Q%$Z)QT(KTW4TG HENQ@W*-FWR0OF[H*K2IECG!++"0J
MG<Q9*U0R;GENHEWNI,[U^=O0/#X\$?UR_/RY:N(=,W.PW6FV[V[0:X^3K&\_
MVU;W+J].;H;D-47#DU<4.!C02H^JY)(,4FOFE2J@SRN8;8FR/:5[Y'?#6.U]
M-6BT.U4K-GH=?-O*K1CH:Y,$%SV:&$$PF#96<:,#&I^$*/U@0NO,,O( YZ;K
M(<:*3O=H["65J^I.<Y>+Z!/.(_38)AJ,S&((+H<Y9DY/@M4B7,S\I,Q"];GJ
M]:K6&.[BMP^K^;E"M=JPHQ "V125#"RH")0%DR)",,J8CI;P4'AR3J<CM!7$
M/(ON9?&P3!Q#2AF30Y2DT$OD-#92KH2*!,I3 +AZ-MWOJR]59]-54$<]SROE
M^=!RH;7G?(1J,>!)FL[ILV]&$? <0N_?OA%ARP4H"2(+1T1@Z*D$P4AF3%BP
MB<@2PG$&\T6XFC+;:K7SS%^K6FX:&R/D(0%C[.")(UHP0R12J9A@CH$J@P(T
M9GH9E8^D+".WT_+X5WNP79.NI S/E>CH9#4H3S2+%IAB6N03O,L]6ZN&O"#G
MV:2?.$9.QD1+-7?)!##$2FT%*@4017U*4!1(O)IM*OER MX35O:1D(PDE;3:
M8!RF<I?$D01RRP%1X$XSVQ%EOQ)89G<,FCV1^TCD!6"%T2.)(BJJ,-#A5L;R
M8,A5=F<3VA]_-+M7G;PFLWF591!HN:54$GF@$!.ZG&S0%8\.T28OMQH2,$NG
M=TG3/ ;00XUV^67GM&)_ZI(#PU62+%<5HK4WS)D$"/ZM-#JW9DX%]&>*:YA+
M^GQJGD/W,I51WF@G4<:(L]#!HVT-GBET_%+EK;"%#T6ZE=R:[KL>4M$H<?DZ
MN6,+-H=6J,8*T$_9Q*13$>6;F$BIG):S2=C)MZ]/U0J-=8$2C_ C.:N )L@-
MG#U)UC"1=S'.\?1"B37)ZK6_C #L2*J^>X-PMNHU;MY^NFE?C2[_V$5,.^QU
M<@G V\^?^YOB4Q2D,FC;N'8882/@%F@/,,+FU#,,5@KBIZC>@KH]L+>T[-2[
M1)QR-G@'EH+CG.8T-PTQ;_LKL,(>V?NUFV]IW(P+N9>[M;&EO2]^;M[_\4_$
MCX]7_*UJ72% "%6_?34N19[R?#CY6O=?K71V#"&S4VBH4 ] 2*G1[@8E HD8
MW7LHENH6RVB:Q5.4A7'1170H!BTX6"6,MIHF@JZ(<Z&GMB\U&T<CB[^E?<B"
M<Z)T .^D1SC(,K2.%N.9?**+D[K8[X".;];:GIE$O#+4*^#!9L#' -TD9(EH
M,(H&.1DM#?X<67HYZ]\/)9'X^_M]2(0RG<QHG9%P=!M@)4<[XH-1,7'BBB7&
M<Y:%TAB3:AZ8-QRT2D8;DO)TH1A'89 ](8MJV#L26;QV[_9B1X4P7(H@+0-*
M&)?.$IM7<1E/G)=+SXSQV2#DS"2"8!6"<U0*EYME)4\Y18E$B9$!(VH2:+7[
M7<&H^N=_OOLC+\K#;'AS*,G\[?>]6%6B$#-KE3/"''7&*,^859$*F0\G$N7!
M)R-0?\X2H20ON)AD;*04=*1Y44E%$JU,3BFY2%=@5)1T)+)!BO9B66A2P>)D
MHIX#_G3@K7,FBDB$L"8LDHV \Y>-#10-K8\!50>\9EHF2K1$0.NXY+Y8,1&D
M2-P=2B+_]?X?^Y!(-)Z8D*M4K83$P1E',?*3A$D6?"BS8;-[<<Y.(BGD#@TD
MMT1W #[9T<J)H,1ZF2Q5<^8/4H*2T>R()M"'UWL)_[CP6CI/O7$*7-#6:@MY
MLX,(W%I;%">>LRP"1$8\D!0=QC><8=3'T,)BY"=C/G5JLN;XZEAD\?$?^TF1
M!.^#=,Z[H" !=X81'?+Y-QZ\F!,*,W4L9F1/$D%8&M';""88!\:,I:@7(D;*
M#.&4ZME0F"O%7B86GJS#?]'<D8TFIZ?S<ID%$O$7JQ(JCD@2?%!%*E72V23Z
MF0DD<IU&#>D(4:"]S/M'!4&H9H"B/66SR33]0NYE#8'L)W]D0'C4",2KS#%E
M@HN@K2/<*&L@TG0 DWHP64 *P*3F(=H,43'BLR;GTH@&D7A9>7 4LMA3YBAB
MI&M,C,[0 $8&ZVE ,^*\D$P"*]8\\U%J+Y,N.9A(!"(OEJAG5KJ<CW>1YRZJ
M"%.%1A1O9Y-IU,#16(]]Y=2B32IQR[WADFG-I196!?0L"$TPF"F7:<6Q*,F>
M)#(JT" V;T^D1C)N=-(H$8]0 _&JGA?+C'(!C!Z-KNPI@V2YRRU:$')9R66D
M&.?SG$%23E!'3+FD#Y2?MT188I9Z"E(1&@5:$V)"E@C+*22MV")=4>4>Y,/)
M9D]Y(V%)X,+YE/OZY-TR)AEN0B(V.N7G= PE]&7"FX-))!BJM==$:<=!Y>4^
MH0(&=8('I<+4QH-#91E7RV9?.35.B7<"K6Z,X)RV.3A&,"NB4ER'LG^2GMG;
M>W82L99(IJ0SP3"P$?&;TH:R9"/C=+HOUE1.C1$X(N.RISP2X=IZS:.0$$"'
MX$P^;!"#'A90,82:#7J4/'.!2,<0G7 #N9T$X<KA=(K"8Y@<&'&Q6.\".);I
MLZ=<DHW)66LUAH,68D*3*PU-V3]S)><4H5-)CR65M">)>.,T583E0TD@YYXE
M5QZA+O"\BQO,;'9MM(RS$Y%LV(F21XN0P5&AG83<C-N+?'"V$L%9X4*Q6WMY
MRJN_,6&/TG6-FT:G67VXKJK!S]UF*?YWO>JNT6[%KW=5IU_EC75O!]=5[[ZF
M>?R*F<KZ7:JX%CB_DY7$N9SST39GT3&6(TD*7\[YG<II68&D$#JX))(7@/8Y
M*:3,,,:SZTK1EGTOV-(2K\T).Y4!5#:1@-%FROT)B%$NRJ289A;_C7.:ZF\E
MI\?VMODLAZD;-IN50FMK73[I5F@0,B!$<^B#F?<:L:PH.X,LTK;%!#V?@65:
M&:Q$\8(F 0T@P0E#+"(I[JD"9]%7KBWMG3"PI#?RLE$P2CGC@DV24 @L.1P)
M0I2)+N0NLT4,OC "7T[4;AA9-AHI:I5'PB6F<N[-*8A:A)@;TP9J"W4R&XW&
M"D;R\06YV_K;SM-GQ6[&.<TD-I_[C]^-]RP^;BV::XU2=W3TS ,J>*!R5>@D
M!!@T&&AF(Y HT'4*JWCP5"L#JCR+>I%*+)#*\T7XQ[&+$($1!:EU9,Z Y]2Q
MR*B."*%Q6FE>+-%3OJC$93\RU">@AH[9T1GGT>D$>8N;\BXZ030#((F6U9GF
MQ65X]'I(@S*)6.T3#Q!4KM<+U@9!+(U)J6*SU^C8U!T(\4VG/^@-1YM&'^Y[
M7S5O&OU^^W.[:J5>]]8VF^.=[U7KK7_SIC/HCL4PW@6/SWC7[64I[,",AD?!
MV_[]I4\$;C$6KZM.WF*#X,ZV;MN=-CYJQ/4]ZEN5:@!#@D:$S=&R&H\1):4$
M1\4X2@7A1?W;W-'8K8 O<1#?5_TJ'PB!HQCRB0_=NU%[C?6&,&F:2_.H<A:-
MD3-16L7R6;"$:U66,-9#N)<AS$??].]WSHX:T2"-*TLM$:W(O)=8*A 1#$L>
M'.*:W%%QND?E.*VUR!R>R>AMX,&.RXHBSB>:>[2@$0,5I[1WQFLCM22>@RL0
MUJ*EH'H<#VE($[<:(3%-PN630H1-W%F%)I3GC=YS&KC4HW@\ME13DYM=$FXL
MVM+ G'0DUVKKH"53Y2EZ"S?$G,/H;191'9<M-4(H3CC!$%7FXZ>T$=1#2$8D
MHI(OUDKK03PZ0YK;CTCE2/+!@P9NJ!5>Y\(1(IPOW6$]A,=B19%J90Q3*N>2
MHQ6&6:\<ER2,SA4O"N;.>>1.%HW:W$C-^"0,$:!C7L%0.( B.!S8.5LOZD$\
M.@NJI0J>VY0'+!^XYH24("5!%\B4INN5>M=#>  +2CEQ4BMFA+% 5<Q;XGC*
MG;@86%.6D1[9R-TW_'K3&3_M3:>:>5ZV2:.*B/BU>3-LC8EY?&D^Z_-CU<^-
M^(XP1;-=VIHK!#$Q4>[!@B3.L"1I4!@<$LF K]?LYP6D?5S#?,!9N^4P4^>]
M]I;Z?%97T"92X43B0@8:55G640_S@>'MENO)AJ3@!8_!4I#!N!B<BQB8A'P,
M8#V;C\X';SG,WHF\$UOEC?M24D-U-)9[$D)"8/6<19'##_.XBJL\9^8$5DER
MW[]TT_WS_EFK5MT]-<HZ:40T$ 75.@J78A".)&?X3FSR!L(\R& =<.IM-EA<
M^AA#(MYR!Y*C!Q5:@A;.4!)87*^QV2D/UF'=X6:#9= V&I^;ORL*W##-()B\
MX)^,E*$\G>L<!^MD9I;T/FJ>#-B$ 8>U.L0H%%4\H%]3O%C;.,A@39Q6L.&Y
MAPXQMT4[[T$"6*ZU4D(PBRB-26<*([^PZ'."@NU(7%U9W;SJ?,W-YGO#ZK&L
M>G\5U#10*A"[6(2IH$(^M]Y;"X%RZJF<<QK=?B2SM!B>1I#YN  )!H!'EQP1
M A+!2 H,+7#6PD+79Y-X;(-GC,-_@DB*)R 6=&Y>Z, S;Z2WLCQSX=F2^?;4
M</E]^^IZD'LM-V\:[=MM.UW[&!0EN;$_(6!S?9CDVAF=\N$&EJS7"GH#ZO;
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
M-]6>UHMJ[T'P_W,T_A?I_M%9-7G, 7!R)3@'CYXV<(_.DLS!H-Y#I<'!-E<
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
MY>BLJLXG=,7^_61RW4,&?_O^EXO>N)K\?7A>C='/QX_T/]*CZI<#>IWGE(/
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
MC\SXV")T"DDJ0?U>QEG&,4I$FFH>\;]RF4QSQ]M5>MNB]@3DG#M8_^'#N/J
MMOTQMA<#&R58A.*, /1D7(S1V8)N.>?2L$8CE^3,&/$4U-V,Z=.2NS45 <:A
M38I"*71V'&<8F+O"@V91<(<:=Z7"=6]<&_GU5C!NA?:SA/-LK<[6U9MWW;BS
M^CKZRM&P6FQ@GMNXNZD-%VC$>Z%"-7044'?3E@^K @"W5FJ[3,.HA7F?K5)@
M)]).MLNZ5GM)V-D@@[26.H(9).Z]E9'3UB5TJFPQ>F4,;]\PO0/U6D6R5?*N
M#;X>1=M8N+,I!FEH0B++UF3M OK]05N+$=,JV@*\T6W2=GL,&X3];;- _+;X
MK1N+9E?8@KN2]"?H> E*,F:#XX)6=47O3#9)Q92ED1X:8U86]<2SD.59#^<?
M2TYF3W7Y4F@C34C!%P[HTJ!RXH%)FPNE:9JS>!<G93X3;5HYGG6E0^^J\>62
M[NK;)/A<VY#,-$^?=BR"S]E%R_&U ,R$R$-^]=U/\"O_0:<62+81WF>DRJ_W
MJ!*"BB(#E;4C0PECO151&/R'E8@N=$T5^0.W+YHL=I%99!+.^")M3 9T*(%X
M1L80I&"^I%*31?T@U$LGRWUN4<JQHH&!"A$,%]Y$;="WSSX&Y9TX0F[9>(?_
M<W79Z]/>J]NQ8=>]P;;T E+6$7UM%A-(ZX/EWDG4/-%Z'H#HI7]MA8<>CD:;
M5%P=8JWZ>K$%%7U6O@A?7+(%:#J6%YEG%JR0^*= .LK\"C\(V2(A'X!)FX3<
M.81]#)=267KD"I3,'&B5HE<EA,!2UD&H/*.O^H&W2=_V$+Q']IN17O5SI]7P
MO#I?OOJVC,;X^.%L$?S9YW?XM\F@1N'/^"U_'4T>L&982= N">HM@6(9I4*0
M>!A$VJ2=:PS;><T79^VT!_Q]FJ!O.8O#T_7X;G;++#Z?7TY^&_+L7H^18A2(
MN-,QHBOA6(#HHK1<<B93E$OO;QJ)AIW!W +)VGRT@Z-D03HT>UE#AI!L4! ,
M!DHLBQ*X;PP?;&Z6WQG&O2"X8[;)GY_WZ<&T[[I__OTP]J[ZT]Y@0ZP2A90J
M Y4]X;^9Q,B>,=HQ V"4S0U90&(9=_S$VCXU1XLKE1>T/H3&6<60BM-&IYR-
M3YPW+X9;)LZ7<5(/G9,F2D:+7(S+QH$)Q:M8I&-">\Y*B T,D", FE@T 'D(
MJ!M$ESE>/$N.N22A@$!Q52X(6D=F(O#&2#U)/98/ ?7GZNIZ?';1H[01C;N]
M]-?3B]&X_]]HQ2YIZN1]:TPI'/B;^F6.S4C;-9]R-Q&L^:>K<7] A[6I#AMC
MN>A<H.$+-%['!<^M\V!0(-$9#8WYLYS=_+- A,THMD$5^S=>JM^$?3AA\.-H
M*L>?Z6&;:$/#TI!%,I>& \WF1*9(04!&(44640W:P/YH<^?F?/GLE_<L(U<C
M$=@RJ>Y+DHQ.B(AB[M'9\>B"&VLU2TK(4@ :0H_.@+1;$&H;K-?0;HG'L%FC
MMRAJ]V=AQEQ2\BF"U9",L#;ZP .&+HS)HO@29\@NSBG>B-YS$V,'GN&!1L'J
M$BWZA2')(*6GA')RJ3"V_!;*J477^*D)TK*]+T&DG*Q7QA5 P^F3\%'3ZC K
MO9/+F(*J*O9$A*V+ N\/A@&;$6RF8V"@8G(9;4<NFCS=HE1332HA]!(7>!U0
MK6"P?QGW+(($ER4*-0BM;8HZ,J6,\(F)U/!O53VA]R@I@3'I+L*.;^$>G:R
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
MKLZ0[7<.$E/=%//]Q6@O*10+M.)I<G'R$YWP$:9OGF"+/>^N!KO\9C=D;[6
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
MX:[?.:)*0C=BE8I P'MB/RU:D1_-H/(#$S8(T6*W20S7^%A(V16ZE'JL3_B
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
M*DIW&H7W\*46"&<^C^Z$!:^0D7<^Y5$\TWJOGP"R @1 VZ^AA8\&7M^B\FM
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
M2#R6D<?^G? HAM]3L U23.>MC\2]1(GC&[=KWJT>(1 LDA,.,[0P$G>)SS4
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
M-72N[;.?'DF_*,EG$J'7#=Z3:?&#Z<M/W7R!PN>B>JX*]L&;^[AU.&Y**DS
M#T<L'HLLV1Y>3.GV!TBW'QA)M^^UCYLOWZMUMG^M.D]3@9//9Q_NPO[#C;9J
M=>L6S;!([0RJG;YIYUHT%)U=OX&"/S#<7(D7'/6TQDH$WXXRFZ_U;H#UPNGT
MK)ZYX]\JH1I4Q:^:EO&$B(AXY]%=[;8U;-'I5^6Y0$WR=/XOC+Z>R^!\&H6N
M4"=^?L@&LVW9?=J$0[-32G*:[P=QC%6=; H>:"*]]JYK&4@U%AZ["T.OG',3
MG@GM-""C9X-9:EMMNZ3JKR\08U, 3+/-0Z37-1^LZ13,*2\EXP2Q2<MRE(%6
MAYCUJ6:@#6&*3+6<:8+=>'H[.H-5C[".STGZKE[?&IK;HO>L8)K",D;R7#<G
MKCY.<%6Q/C_QTN=*R9$4WOO9)30RXFZ<</]7'B?0T=D5C\4--N8E";"7[_L]
MVVG95YW+=M=Y__ZB,VAUK@>]#^W^16LP^'#P!-A2ZT+?+.62IBF9TT@HE*Y.
M- 7W7[BQO!>8QZ"ERCP0J\H342_#"6CL+.7=0<OIOU.,WW/IXZ/.1V%TKC@\
M4RX&+3OV:$6S7M[X>4Y4H;SLIN2HES^=,FO79]8.AV]:+;O5;PWM3F?0[G3,
MY=FVS"3:MCI'S34=U#I1EOI.?:>^4]^I[]7J.\4N*;?;[)8"+4YXDL-F,.NC
M>!*I7.DJYYRW&!X/<M1<>-*V$]&VUGF;M(VT[4#:UC[OD+:1MAU(VSKG7=(V
MTK8#:5OWO$_:1MIV(&V["6/N;RM)2IA>>]=E&$WQ?$;!;L/@11G3QG%;B;1"
MVO*WC2R<]L"RAW3XV,%4XH3M'_',Z?+,P+9Z-IT%1#1#-$,T4V(RY\#J#<QM
M;:O"P!/-$,T0S52+9EHMJ].B21/1#-$,T4R9YXQUVN3,$,L0RQ#+E%F59]"E
MR RQ#+$,L4R9A4TZEF/WB&>V%,!I%Y>\B017231CM])_41WMII;.<X9MJ]VA
MD\\/8%0:9G2;BHAVR^H[5%V5 $& * ICT'):QK2%4$&H(%00*@@5A I"!:&"
M4$&H(%2<&"I:K9YE=XV=/MD41- VI+5WZ2/+S[&K F0A7*P@^-QQV[O6A&](
MS?<^YGD8PU?C5T9H!?8 -JHIV&K;UJ!#)V<2M@A;QK'5!;-E; &&H$70(FC-
ME_M;EF.;.P:(L$78(FS-S99#LRV"%D&KA.VW5L^FR19!BZ!50J$>Q^IV:,_I
MM@(X[?SI+PA8 0]^<3&PIJYB#2S',8:>IH"$5G5/%@\]J[WFT"S" ^'A-/%
MN3^$"D(%H8)00:@@5! J"!6$"D(%H6+ON&W'ZK1IW_ZC?E+R]/KDZ3L1N+/R
M8K9-60QI6<,>+864+@ R2Z<'K1*\. (8 8P 1@ C@!' #I+?.:0=/P0M@A;9
M+@(8 8P 1@ C@!' \C30H4V1PVT%<-I)U+\F@73EE/N41#U/&K4[Q@ZD:0I(
M:''W9/$PZ!C;HTUH(#34' V4 $2H(%00*@@5A I"!:&"4$&H(%00*O:/.@T&
MQ@X.; H>7A::I:60_;3F-HP\$>6];T^_,2],;GW!_LO6_^TDP(VCD;T-;W7@
M52KTI3=_T]%CX_KC@]"C?AOZ7OH8<V>=/B?J?0Y#+4.R!NENO6@[+=NR'7-'
MI^XLX,KH)2TGE^Z)EBU%(E0BU&,1JM-UK#81*A$J$2H1*A'J_J+M=RS'Z1Y?
MOI512^)3XE/B4^+376?\MM7IFSM:A?B4^)3XE/CT9/FT9W7[YD[3(3HE.B4Z
M)3H]63H=6ITNS?:)3HE.B4Z)3O>/GMJ.->P0H1X\<>K[F(-<UEZ_YN\?OD_4
M^1WGT[<?@WNAXHD(8G7I<Z7D2 KO_>P27AYQ-TZX_RN/\>#[V16/Q0V^Y 8D
M\MX/W:\__?4O/ZQYSL?@2MS&%X'WX=\)W/<Q4'&4I&_@:@S?XS_XVSWW\=L_
M@DB @/\C//CM<_;GSUP&ZI=0*:'F[X.1"G X/HO1CV?75RW;&?RC_:^;JS,F
M/?@"FGM^]>&JV[EPNM=7PU[WNGT]M)W+#\/AAVYW<'GIM-Z?_?1H>(M#=2,G
M0K%/XH%]#B=\<QY7X79?!N)\G*+ :=G?+0%[ "@N$6LH1HOA_V<%:5J,!QXK
M#,>3RG3PKA1:[F++Q>.6RT7+<;R55+'P6#AB\5BP4>C[X0,TBKV2 7P3)@KN
M4:_?[MS)+<9XR5[:( A-"3+PH(WZ<_&A01A-H-=%V3EXS?S!&J?,%;Z?7?/C
MF7VF/P,)N?GGEVOG@_3B,?P)?<JX#WC-YU,EWN9_O'O,98M&%=,NYWPX6)LH
MNWWB9MJD7ON[YPEWK4W(NK3G[;WCOOZ4.K]3(B_EZRZ:VWZN=,F2/[3JV)0@
MRZ==(A<X4$0%20QWL0S#C3;NBYC&8G(K(M:V+886WY1K26I':I??="7<3,D<
MK61;U[BGVN\;_;MCXK02Q8R.$I#8(]Y0U9""8W>L7M=8J9Y*Z 9%6:MI$0_'
M1)6)3VUF\4JP4L6CH.D:4M\:=LVE.%5>9:JS%[1Q9?I 7C,VX=%7$3.Y")SN
MXM0W9^?T>K^@9?6W=]1/92LUS7I/$2#ZKH'5:QLS0DW!0VD3]$&]#8U>-<+E
MEL>+,&4 :?]E\A>YW%N[24>?V/:M-J7&5\0RTK28D&Z(7!V[9W4'E*1=51/?
MI!GC322X2J(9NY6^3_/$=69VV+;:'9HITDR19HIYS1#;I./9%$308N[ZJ6(8
M3<.(QX+.\GZY[6D/+'M(A_30)*U"UJH!:--W=?I6>VANJT'3L77:\Z0+I41\
MCH,LH,O"Q2T-4M"$:=T>'L?JM(WE638%/C1?.D6$Z+NZ0ZMEMPD0-%W:0EF^
M("R!4@.:+KW8\@PLQZ')$DV6*F2J&H"U-%O*L;I]PA9-EK9*0Z33@I\OPT7'
M!],<B>9(B^S#@6TL%M<4/- 4:7TL[DX$[HSF1SNDO ][Y,/1_*A"9JH!6,MR
M]JR>;2SHW7AL[3L_JGGZ_)=Q&,7GL8@FQ7I%I>"KE&I^U4N<76_P#GY<W"DD
MS-(LC>"Y6PP1-SKW#KAAY1302'-$RCHTG778[UFV;2SCO?'.+$T4::+X B,(
MX'*H'-&A9HKU-F.4=KC]BIIM.0YM2J')&BVIS?-P^RW:MTCSI6V4I?Q]P UP
MX-8;GC96DBJ_?%M3 $BS)9HM;3];:EN=+BU9TV1IJU6U\E/GZP.?#9,DJVVN
M!'Y34$-SI%,$2!KJ;EL.U7:A.=)VP3C*.]S-ZG2M8<<F)XXF2-6Q4PW 6FK
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
M-5M-7OYT]@KZ$8_#1($(U.NGCW)[:O0W#6WAGB639.<:(@.PMNGGXD.#,)I
MFXM*Y> U\P>G8^X*W\^N^?',/M.? >=N_GF-,&[D!$;XDWA@G\,)7S'T#]*+
MQV^'PS<#NVOW!JU6#_HWZ'Z7DPT0B<^G2KS-_WCWF#P632RN?2R6OSIK%ZNV
M7SY)6]@:?O<\Q:UEX?1^9[_;C_OVX]Y.?:]IXZGOU/?*]WVGQ?/#SY<WN\R#
M75R[P5YSY453N\=-+G'!EQ%1H5_#780QW#CU^F/A;_Z"_N;ON;]Y#=,B4Q,R
M"KXLFML_KCX]@M;.VK2C)(B+2E2=Y;C':@"CYE3UBU X$8=)LM-BO\(EXY?L
MO:B8AM67H!JN97/=8F'$?@;C"&\C-2,U,ZQF-V',?;*:![":SQVL78:B/2/'
MXZK>-9>%V.\_,4!-!&>>X$CO-DXUGQ3GD9Q+O6Y#." <$/^2WC52[XA_"0>$
M ^+?D]*[[3.ZB)P-D7-I!5J/&\/8.\-LUQ/YC#-.)0I4;1:4N43;/?)HCY\J
MFT:CVWW+,;B;JPHC3_NQJFFYB6=.EV=>.7TZ4HZ.E","(@(Z#@'UVI9-9?G)
MSR&:(9HIU<]ID9]#?@X1$!'0<0BH9=N6TZ: #O$,\0SQ3(F.3FM8/LF<@J.S
M[V$7]5ZTN@RC:1CQ6-!9%_F*C-.S[!:=RGD <],P<]Q41+QJ#WJFU:3)%H6@
M<K)0Z;2L88NJ^Q,@"!#S:8JQ4N]D.P@J#8:*TQU8PZZQ)5(R'H2(FB/B56]
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
MZK1IW_ZC?E+R]/KDZ3L1N+/R8K9-60QI6<,>+864+@ R2Z<'K1*\. (8 8P
M1@ C@!' #I+?.:0=/P0M@A;9+@(8 8P 1@ C@!' \C30H4V1PVT%<-I)U+\F
M@73EE/N41#U/&K4[Q@ZD:0I(:''W9/$PZ!C;HTUH(#34' V4 $2H(%00*@@5
MA I"!:&"4$&H(%00*O:/.@T&Q@X.; H>7A::I:60_;3F-HP\$>6];T^_,2],
M;GW!_LO6_^TDP(VCD;T-;W7@52KTI3=_T]%CX_KC@]"C?AOZ7OH8<V>=/B?J
M?0Y#+4.R!NENO6@[+=NR'7-'I^XLX,KH)2TGE^Z)EBU%(E0BU&,1JM-UK#81
M*A$J$2H1*A'J_J+M=RS'Z1Y?OI512^)3XE/B4^+376?\MM7IFSM:A?B4^)3X
ME/CT9/FT9W7[YD[3(3HE.B4Z)3H]63H=6ITNS?:)3HE.B4Z)3O>/GMJ.->P0
MH1X\<>K[F(-<UEZ_YN\?OD_4^1WGT[<?@WNAXHD(8O4QN!*W\47@??AW(N/9
MQT#%4:)_N>1J#-_C/_C;/??QVS^"2(!@_B,\^.US]N?/7 ;JEU IH6Y <N_]
MT/WZTU__\D/^OD_BX<)U8<!B4/??HS" /UVAWX)O&//@3D!+BM?(P)53O_ \
M&+$ A^6S&/UX=GW5LIW!/]K_NKDZ8]*#+[@;GU^\O^SW+UM7SOOV5=>^NK[H
M7;P?M*^NWU]=M]I.JW_VTZ-A+@[9C9P(Q:"E[',XX9OSN0JW^S(0Y^,4#4[+
M_FX)X ["N:!'?R8JEJ-9F3C$QB]+]TF=VK8G@Q([HI_K"3>,>"S#X"U@6D38
MFO1Y"XU@7V(>>#SR%/MCZO%8L%<77_YXS4 />N=VB\&/^/?@W'$L=O:+X*"+
M9Y7O?MK)+W_,N^$"NF+0PYMP*ETVZ+0LEO;E#6,W8\'"VS^%&\M[^&O$XK%4
M#.^&?^*0 60BO);%$0^ W")=BQ4%XX83^,AOI0\09WP2@CS#Z(X'\C]:[(K=
MSE@$HW 'WZ"P??T<#H".E7Y"^H4OTV=(:&$8P/L%N^4^!VUC:BQ$;.EK/:E<
M/U3XG*]B!LT:A=%$OX?QVS")]</P5QY%B'RMJ;I_67?X=.KC*Z!//)@Q^!F;
M'8]YC'^+2,$S\;>T5?!2/QZ'R=T8/D.+X<8'Z?L,_M(MG(0*!@2&3H[ UL#@
MN"G?9!*= '=!DT<C@?*"#HGX08B N4D$7\3LYXN+WW6WYD.BQ0UW9@+3'8/1
MV%%F#*0#WX9XJ1YIL SP$&BL\.!I+)P*Q$8^*(IIB"PU#WLR;QQ('Z].)#Q=
MS7LSDH%^9?8,;-[C!UOL82S=,8P*M"RY58"W&%36GX'P0(-YA..!S<_;YZ9C
MZH*A V/'=4<*;\<GSX7)IS+F_E.O7]^O:WCF%(P_=$XK<2"QH=@*>(>GNP3#
M5T00# ZX AE(L$D\"!)X-;Q.AAY*Y$X&@5:_$;2;70G@REOXP^E:FD%2)9:H
M:'(RO^U! MJ";*!&H.'PR!E8<%2CCP'[WP3DE-Z-C;O6X@;IL;4,]CZ$?Z"E
M*H$QSAJ/S*4U'N#@+?4(FS.-PGOIH48 B(";4/+P]%>I)--/KU/@IPHY$=!4
M3S_0@PMTJP*P#ZE2JJPI.>I6;X2!!V\IQ5Z.18#E;,.#&$]?H5^&C]$4C:W+
M:04^P>!.$I_CR)RG8P37(Y\B ^3:!7JA1R<'"2 K$C& %#H/\L;?$/_ZVG1P
M\)+Y>\$1B077WR6:9/0SP066**])Z*7 @D=&H9IF:K+:_>(C4UA$ IR@"&Y-
MH0\=CS5SZ4N!;J;0E"AOT6@^_O/K4%'^T"JN:1M%N/+:5'DRMM8MR]5O"F]$
M[O/RKJ][0\I[Z"?)(!$HT%L-#PXZ&*5@035>IK97.778N:EY#2W]E0<\9>;T
MH4\IT5S0F[J50;N@Z/"&"Y6:,)&J2F[.(C$-(S DDT4#QL""G@ X3K02X"W*
M!369DZY"OD*[F.L0MH(O@)<-G9:1I1^GA ^7(YQ@DC"*'Y#SIC"K@%=J30=^
M4W$F+!@-X' 07DH,>'LD[J5X$!HE>1- SKI5R\*3"UV-0A?,$S9:/U+$N79*
M_(17\]R4X+>9.5GT(F^HA0*60=HQ7]RC21/PB' FD!NQC:@<?FK)]0N0RX*<
M?HO/G,(,*?,14K4&= HO;RL^;GXOJE4$DZ8E&Y]$:$<K[V:9\3*=-GB6"V8O
M3)78.?L51)M$<T:X!*:0,4OG1'7S0YWVD@L&.IZB$@4T-PACF';@%PLBREP?
M[:<AH((PSG4-=$J;8O!VN(P8S"61G\:1]MH"<(+ =PTG(&T/)J. 3F H_9;7
M;Q9;8;2WIJUC*G.-J\QC%#ZX* &.5P:U6YP8PR4279@E3PW>*A0V'ONV9)S2
M(0.M7N>+H-9;N76QX,:1K^U7D+FG\YV/_7=J?B-8"3G)V W%*+Y-4]HIO$MD
M'D1NU:U%KVZCD'LB4!F("VYT_E8V 2U :"J)#49/5MP+'Q@]@WZQ4WEKL!NN
MGWCY-8G*K"Q7X$:@W!#A*IGBF.O/\&;A<I6:GWDSMAR;C'U3O5CJ./K#_)Z#
M;PDO.8?GGBL.;WND VC$%N:/*^T"H7>B#1H@>JQM*GX+O[$'=$?/O? AT-U8
MB$K;,7B6[E$V]A%Z O<PH^!^RLQ+S9.+64!FUQ>J^G+?%%"UKV\Z?*EONC1"
MV7B \B>@_2@)#7)O#L3G';153XS/S?BB\=D7(QF!<BZH(Y.AS#VJ94D51%-L
M=L&6>B&,"9)*"J,ER4+;QOP>88P:CA2'9I7#5=F<ZU*/T.SO:KWG]-BF59ZQ
M39BT_KD-\Y6SSZ!E\AYA@8;L4Q@ N<'C-$ZN139=^TW#[!+FTGC1[V#I9#)A
M%Q,<V_]DCDO ?D\BF%TK4)!+@*A^ H87V9<YFNME"U%"6]A"36W:ILA%9%73
M1RZ%QYR6WJ$U-L" #$H1[0+&*FZY2MU&\2WW&/74:H(CFMZ9.LI\II]]FT[*
M]'0RRB=B %!L=*R;D+K8K[);+;R&(Z?B&(*W_P1Y UE$L0CR!BP&.Y_H (FY
M(D)6V-S9L?"]I7>^85\ P3J$X/LS*WOZO $+BR'R.[+)S$)2F:>_VLTLK%-X
MG!=JULB?RH.B!YP&@W0_UK8820&O?9=.5;)/\TF66M<PH"!\T R:DDWYBIZ$
ME?=IP3KX2&T--XKP3@0BTL$8]*Q6Q)"_,9/ QU%F;=<];H;:@P$>D >T"1Z)
MEXEL\ID9R]0XHCU-78=_HYG*7I8$B_?/!_0I)8*K,6H$U@G;CXC=J$^@ZQND
M R]/>3^+6*(9CJ9(?^FD>,*CKV"=81KN:AL49&U%6ISI^=-<FD_:[N4^+/$
M],*D^7YL&>>&O&C"GWMHRRY&3E=M.[I8F\(>*=%L:?T]P(Z+VO)2-V U2&/E
MSO3&WPN:*%4A]!+F@;"BL<ZBRMK=3=$LER ^S1>30%(?@"]FA6B1PM=/9!P+
MK^@6%\))R!?+#M?R#'^#5Z(UAKR2G;P2IP5>R17(ZUXK8RJ'_Q'>'=YXSFYX
M="<0]1\GJ V9K$#6A<<C.O,[+E#;:^E\.*UMG0\=SUH$:<?0]6*@)^/GQU\O
M1<;637H5S'1BO3":&=$4+85950K)*9)L83:M\0LV,IP P8+F)GX\)XAQ-BPJ
M1NZ^FST5T;3RT%1J]W"91KKP,'RM;JZ.02Y8%6Q'_(PMXE_%W&.)<TV2CS1)
M84P.!C6U"#@$[E)P;D60^3P& YN^"JVTS;<B1LI>F+Q(JJ_%T":?J^8\;I>*
M8#'.J,FYR'1\#JW?6$X7Q)VM9VE/)(S'S'F=^BH"%[WR@('')H4(U7S:A4]'
MVPY]Q1>L?Y%>6WV=NV.J&*E,!9&-\"YV%55\DUU=-9 O7+S9:&'7+N,\81LV
MFH;9(]N0M0M]\7SU CL/W=6:X1>#XTO@PV9K$&OG9LT</=PP..);NN26FY0\
MFIZW,X-#!M?LP2E+/&/Q\V@P>EY9?"T/&2FA5RC$DE+!2X$V\X$,<.J"A.1F
M+T%G1$\B43$B,18@AWN11_YTK!T:% +[J&D89++>:77HR9C$?,BS0.6<R;3
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
MI)F.T7"M36 .TTEIM5M3P_*@KG ,8'*,, $J@(JF^?!P0HY2CSK(KG!"0+>
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
MEH9T[*?O:T%9M];'VXHE,;5Q)*OC,9\%/*VKST:O": ):)*5'505W92W+!"
M J".&U"68O7D15; $_!TW'CJV6C6!S0!3;*2$88A;VGKD> )I80KS_I"T^W7
MM4HGID8DG[$]T&:QIJX8/4R6[TTECMC @V>.F&=ZJ!L QX!CP#'U^C(]E%"
M9SK%,XWI2=5P$JI#3O+7A?84%>T%05^@+]!7^^C+L-""$=0%Z@)UM8ZZN.?5
MDUA4U7B=:<[D6V-FN"=47$;CUSDXC<V';M30^N85N;5-5M KZ!7T"GK5%EE!
MKZ!7T"OH55MD!;V"7DF7U;H@<5'FVULGP7V7:^XU9;,HT20S&I,'\<*H=^8P
M(3AWE,EG.HU"XH1>\?&,_B?S[YV \CM-G)A^K"=.?[9&7FMY,>RYD_BNM(S/
M4F&U,?M!O"B[#:B\JO,.)!$WE5'S:TG4#W6MP%PAEJ[D!9OO2AS<?0#'@&.6
M%<C2-7U_&@2J =6 :HZ.:N#.@&/ ,>"86LOO/TALN@N. <> 8\ Q")E -: :
M4 W<F59P3%UM6=H^%77I!UE*O49342/6NS:!HSJP%%K]4%='WFWDU156PW*=
M-KE4C5!'\%AKX[U&Z _H#'0&.NL:G<$M X^!Q\!C;><Q[8-64\=B\!AX##P&
M'D-X"3H#G8'.0&=PRP[$8Y6YS)]2ASWZRN,KGRO/%?@A/9NOQ53?R;19NSS6
M2T.KO .7ABF-NS'8RE66>%%E>!57\4-&^?GWZFW"*)ZRIZFB7N/'S"\L=(&X
M- B*8WXY44_$=Z;H;OE]A9AN_"E-R!?Z0+Y'4^>9M9DZ\9T?YH-TLC0J?\A-
MF_CEP??2R4?;_M!7;6-@OBM1RD 6.+.$?BP_?'H*K,7H5Z[%U?25"V(WG]G/
M1V9:[UZ'_TH2RL_7WGCZ6\]O]>GM'OT;3]?W>ON6-$"KQ2T3%_6H&\5.ZD?A
M1^8 T)@3:+GH.G!"EY+K":7I%LY(P_LJ-#LR0.0$_8'^0'_JDD]+[%VSA+;D
M7VO-WM-29N GON9M;=C3!5Y1 4M=.KVE,3$TA>BJMO$\.'2O$X169Y9AF)!9
M3._]*$N"1Q+3611+++:&+AV5+GG_SI)TRBX+_8'^[,1%,4U29PL"PE[&*\_Z
MQHC<82X0_3&C84(3T1(O2IEJ$C>+8]X.STD2FB:'!&HC9D$:OC]$0V;'#%6Q
M5+5V@71E^@O3^ U*MC1"VT SF\CB5-L\MGVS.!9XJ4] DG7E/0@(! 0"JM7/
MZ5O8!;F^Z*M+0=;0=>.,>F5'\M3Y0;>)IQ;-W&L([+<(XZ57TFF*86NR,-05
MJ"#3=<2 T($&H %H*,V#J4ISL;H"".2Q5YYU2<<TCIF/%=-[&F8TW]HE2]BX
M:4P\.HL2?ZLD]L:HDBK> \+-5NQ^_5OW=@6&R)OLP6!U!5JG9J]^9"%;"=0!
M=4L&K:=C)A(9NDUTY3M-'3]D[B.37L@&B/1<^JG?MQ2]+VV:K2M 04;B:!%A
MR+,G0 /0T'(T</M@6K /ZQVI]1T-MI?V3L/J8D<"R9Y?BX9Z,Z%D' 6,VQ@)
MD+Q#0I)-IT[,CDN(YR?.W5U,[WA9]#P/ZH=CWFN!KR(FMX_DCD9WL3.;^"YQ
M8NJ06R=A!V<S]M>47;[,F/YOPA"8A6G\2*(Q\:*I[_KL;J<^/RS*$B?TDO?/
MM\AN73N(8F&ZJDKL\C"0TN7!.'"7AS>>;K1Z]*WJD]"PT_'FT2&CX1XYY+-A
MQ#(X;,12_X+IFTE,Z=F4_6V2D"OFG&!!*]1H>S7ZPGW97;1H)P;'+!>F!P^W
M>OBU)AK[%/*A<7]-9VG1<$,5#3?D;68(586JOB%7]-5-(ZZ76_:!@5I"+<&@
M4-7C5M6W,&A+<C+US5)<97$THPBCFYNM.KB>K#8%TI87UR<"B5/HJV6@::9B
MVE@%!I8 2QPA*>0<T.LKNH%*,W  . ">PCH9Z#U=T?KHG@"6 $L<(2GD'&#J
MBF'UP0$24C -2A?6V(AHRH3N.M*:N39(:(VCV6-:;[G:13$MQ9(7QW1^!2;
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
MUALZ=[#<HQ6+'=;496BF8MK2"C.Z4D$!ECA"ECA"4L@YH-?G/4K  >" H^<
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
MR ^"@X9KS9"'M)9B]3VQ]+W1;4/I&]*:@G6EK1=2$N" H^& >8V'+NW]@P?
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
M4O/Z*5DQ"?(#T+L7].YWW[GU S]]W$7W0(,=J-/;J[J=.P&/S=LKK>:2V^
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
M5UK&9ZFPVIC](%Z4W0947M5Y!Y*(F\JH^;4DZH>Z5F"N$$M7\H+-=R4.[CZ
M8\ QRPIDZ9J^/PT"U8!J0#5'1S5P9\ QX!AP3*WE]Q\D-MT%QX!CP#'@&(1,
MH!I0#:@&[DPK.*:NMBQMGXJZ](,LI5ZCJ:@1ZUV;P%$=6 JM?JBK(^\V\NH*
MJV&Y3IM<JD:H(WBLM?%>(_0'= 8Z YUUC<[@EH''P&/@L;;SF/9!JZEC,7@,
M/ 8> X\AO 2=@<Y 9Z SN&4'XK'*7.9/J<,>?>7QE<^5YPK\D)[-UV*J[V3:
MK%T>ZZ6A5=Z!2\.4QMT8;.4J2[RH,KR*J_@AH_S\>_4V811/V=-44:_Q8^87
M%KI 7!H$Q3&_G*@GXCM3=+?\OD),-_Z4)N0+?2#?HZGSS-I,G?C.#_-!.ED:
ME3_DIDW\\N![Z>2C;7_HJ[8Q,-^5*&4@"YQ90C^6'SX]!=9B]"O7XFKZR@6Q
MF\_LYR,SK7>OPW\E">7G:V\\_:WGM_KT=H_^C:?K>[U]2QJ@U>*6B8MZU(UB
M)_6C\"-S &C,";1<=!TXH4O)]832= MGI.%]%9H=&2!R@OY ?Z _=<FG)?:N
M64);\J^U9N]I*3/P$U_SMC;LZ0*OJ("E+IW>TI@8FD)T5=MX'ARZUPE"JS/+
M,$S(+*;W?I0EP2.)Z2R*)19;0Y>.2I>\?V=).F67A?Y ?W;BHI@FJ;,% 6$O
MXY5G?6-$[C 7B/Z8T3"AB6B)%Z5,-8F;Q3%OA^<D"4V30P*U$;,@#=\?HB&S
M8X:J6*I:NT"Z,OV%:?P&)5L:H6V@F4UD<:IM'MN^61P+O-0G(,FZ\AX$! ("
M =7JY_0M[()<7_35I2!KZ+IQ1KVR(WGJ_*#;Q%.+9NXU!/9;A/'2*^DTQ; U
M61CJ"E20Z3IB0.A  ]  -)3FP52EN5A= 03RV"O/NJ1C&L?,QXKI/0TSFF_M
MDB5LW#0F'IU%B;]5$GMC5$D5[P'A9BMVO_ZM>[L"0^1-]F"PN@*M4[-7/[*0
MK03J@+HE@];3,1.)#-TFNO*=IHX?,O>122]D T1Z+OW4[UN*WI<VS=85H" C
M<;2(,.39$Z !:&@Y&KA],"W8A_6.U&8=#<K//_^4)6=WCC/[>.U.J)<%].OX
M"WT8NBYS.U/VWK_%4<@^NI073B?#T+N8..$=33Z'U6/\T/5G 4UNF(S.@\C]
M\]>__N7GYU=F%_,R-_W#B6,G3!]_]YU;/_#3QQL^Y/FY[#V$7-C?Z?B7D]&E
MKFK6WXU_W5R>$-]C/SAN>G:NVKIV:5V:(W5@FH9U?C4T!M95KV</+%,;&">_
M/GEYU1?QRFK]5>_^6;>"*DJLV?8[<J_7\)L))6XN8^*')&5?'PIYD>B6J9]8
MG$L>:$R)DY!Q%##>2<BI.#;*$B?TDO<O;R2]2SN+UC5=*)9_JZJ\7@H]*:T4
MK/VN:']V>K_!"^J/9NJ@7$S/$!R-R<Y+Z% 05F/>KOD%83UEH$JK96G$>T>V
MJ;Y%-]&]GS#7@?L,<>E3^-S+2!)>*.9ES(V[$P['C+V#:)MEEET--PS%&/01
M;,"D;Z KHRP8^T' XR1NTU<X[2@%>&F^TE!TO?[BYF.8L3QN0S>*8A9ZAH3^
MR,-H$COI/*2&39.ZC EH.EISMQS!7M-96H2PJ@AA][?#IM08M[B;2%,]:]5S
M<,&+K\\:\+2CDW(=DI5(C:M%RP)LHP'[^C1&*ULSA['93,/J68KKB1/3<R>A
MWD4TY1TJA/-^G;(3OLZ$'S]T4_]^IWF+R_.!?:F.;/M*-[7!I:4:QL5H,-![
M%^K5Z&*T]WF+BD+P[CC^^%'R5$8^/R$2"R+1GV33J1.SXQ*1:> 2=L+'^78-
M@T\)NP<79B1$39Q"U")IP<]XID[;CRMD4I%PF;,I^W%2)$L(#3WJR1C=W)0N
M)G[7VM3MKXZ9H3IFAC1#RM208;]Q;J;7ZE;/1]TFVVSUZ(T&3RJB*FC[I&(-
M34M?D>7+WFK];4R%U_=R?NA00SOUP\7K7A1YR$[B !BOMS$\0F#\(7Z@WEDC
ML3%D[\FY>^[.-V%L5S]H[/I),P?W+?;=ET<&"MF&0II&&YMG@D AS:60[W3J
M^'QQ4"-'=\%^C1TWS9R@D>.[H?%T >8E-^J1.C%<*+A0^V&8N[N8WCEI,SGF
M,P.Q'R:^V\C1_=,)LF;*[8UA&>:55Y[U-4N3E F23QG47!U=7^G4 7>*U96!
M+JUDL?,UP6CN4%/$@Y4';U"JYM.,;G[0Y>U(W83W#I9I(<M <!#< 2/9/0JQ
M\8)[:]&YU>ZPY3=>9W;8K>F:XAHHAKSJWV/Q $"[G5UO89H?^EA#"#P</+R&
M?(Y*/AN[L?!6-_%6-W3V6^[&EB4KTAS9+N;83S6E9]2?_3J&Q97(4^RCFK<C
M+0(TZX.*J2U "[E3"*YK@D/2&4GGK0WB*(K'U$^I1Z*8T!\S/Y;HN-=0IM<4
M_[VGR]L:94,Q';,3#WKO;'+;,"36@1R+YPT\0#Z0#Y+;S?&*&Q29[;.R?%]=
MR_1G;F''TN+BZ[,%$IJA:):\_M2[BO18W(H&@;A9?/A6S>I6+?MJK-;41' '
MYFLAT1G:!PT\!YYK.<\U2+#[1._@0T^>W]<<$79+-V&#88-?ML&ZK1@2=\,Y
M=BM\W)L(%'5PH@-I*SN<-Q6F/<70]]=1NRM@1$:X.Q!KJ1?Q@M!:2$.Z^D&3
M5\$+&@(-'8R&VA-H]S_(\\^A:K!XL'C;3,:9S/4>P/7&;I=R)M/SG7#(/4T6
M]:?4Y9_32/RZ-FXFIYJ\]4%OWK*J"T&UIBFV)F]ES,XR[0KFD>5ODU?2"'5L
MI+O2Q3R_;G^P:ZK>!]6!ZO9'=35+MK)GI#SO? ]S\1+WVX3JPDK#2A^H(DY5
M!@/]\#+LBIW>>G?<RG/ML@OL$L1[_"!YN8/*EAS:>_(Y)/Q>8K?7-!)[O)9)
MA3S'H%1WBBW2# EQR"R*Q4G16!R0A<NG+?(0;'C1E++C?392/Q1'C[,TB^D'
M0LI$QO/T14P)4T0W"QS^\^TC<6:SX%&L'@@).\*?BC^,\T6X[&HD9C^4S_!T
M.!]>?M/>^KV,=]V/^+7=C;\YCU,:IL,')_:J5^,[+HA;#),DF^:_;;W3\<6H
MU].LBU%?/S\W^WUM:%W:MM53+_O]*].VK [N=.SX,;GGNU6(O%=U%^.$W.7M
M0;GV4<>=;QH\BVE"Q1\>*-.?A5)E"=>S=&D#Y8=R%R4GW["(.(OW@VU]:]G6
M5\>VOFW;&U;VZ9!]Y_;EK6]6Y&UK6<W#]@;8PWYLDYC2LRG[VR19B.J*&9*#
M-L[N6&Q_//KTA?L=N3J1K;0(1(7MP^6J8GWEX6 T*%ZE[L)-(ZYEDK?"@Y)!
MR<!N4+QVLENK:_3D2>^[G_QY-F8AEDA$RT+H4530Z1_DU91TJY_[:GF]:Z1V
M=<PP'!,L"Q1B5X47Q /0 72PA;"%@&6W80E;*-$6MJ&/B3RQ7)553.SJ/@.N
M1QY]&ASYMK2K:5O]8$BK3VPGD&HV9[!:7013B1UI/F([L0.H "JP.[ [ !/L
M3G/M#B;&EJ.B^RAP4C_PTT>D'K99S86$(!*";3)Q'4.E.*LGK[=QMT (S %S
ML(2PA$!E]U$)2XB9L3?&@"F-I^34#\DC=>+DH)L<'QY/JVG;E#?WW)7^&T@Z
M'B,\"C1(LS=  ]#07C2L,Q8&X %X !Y PZMQQF:MRS9KAK5[^ZK5C;'^$<:4
M2?"_U/L]2I*OX6?1P(O?8OON5YH^&AG:T#JW5=V\Z%_9?6-D7JK&P+:'O4%?
M[V#WJWF;JKR_$Q/]U(G9<4FU>UM.%9:N#3[QGEA,SB2;BYT$[#L[W@F]I69:
MXR@FSKWC!_S"9^S;6>*P._B+]\/;:CGATTN1693D;>7R3O3/]'7[)YVO@UUP
MWMH%L=M?742EZ23*$B:"Y#UZ>A4]O6S[@Z6::M_2]3Y[/LN4U^%+[TGI\*6_
MM</7VTX_[-T/>SJ>O:6#Q[/CV1O_[*UO%&7MXMI9;PKM%D-M6@,R>Q=AV&LS
M'XN(@?"0@7PK_<U1%+_LO"%7L)-"#0ZK3T^@M;,V[2@)<%&-JE-';YT&4=7O
M-.&!. N2-9W\+1(-.$%0>R>HCFO97+?X?H"_,>/([@8U@YI)5K.;*'4"6,T]
M6$VC]1WI)*O>R/$KN5\^U2"MSQH(#GJW0:CYHC@/Y%R*>1O@ #@ _T+O.JEW
MX%_@ #@ _QZ5WE6V$'Y^BP8I98?(N=4-&^I;TW3#7G"2Q8_DU@^"@UJZ1FPT
MNUY0\G8M;O6FQ'DVVA@HFBIMIXI&O/E#5JTWB&D:9[G!,\?+,Z?: *UZ7Y"/
MM"6V(" 0$ CH^5E]0U$-%7X.: 8T YJIT<_1X>? SP$!@8 .0T"ZJBJ:@80.
M> 8\ YZIT='1[?I)YA@<G39TF*M/3!=1/(OX3KSD-@J];6:M%LO3#[O@2?J,
MC-975%T:MH[%3L,<=Q81IX;5EZTF7;8H@,K10J6G*[8N;><DV X HN6 8&'*
M +8#M@-0>3WP,"W%-J5-D<)X !$M1\1IWY+6J/08C <*LU>>-4P2FI[Q1Z5,
M%M3-&/C\K=8B;0RP^G8RV2_RS('2'V 2JW8!P'@='[9.=55:2'34,S= '5"W
ML589EJ*;TM+8L&C %K!5L6CU5W;#H@%U0%WE+-M4;*/^8F=8-&#KZ+!UVD.,
MANJZ-XOIFB.9L@NCNJX,PQ13EX:L8S%-L$"=Q<,I*NM0'0&@;%!9IY@V"NN
M!^"AC%!05P?+ :2\KB.6HFDV+ ?P #SDEL-$41V*ZMXJO[]EH>_Z,R>H+[75
ME62RKE@FYFEJ%P!,UO%!2U[Z[*AG:8 Y8&[S>*HG+0\'8P9@ 5AS8Z9)"\Q@
MS0 Z@&ZS@H2^C;)P0 O0JL&>24N['[4]:\GNT(T#W,L:M;0[F3'[0;PHNPWH
MF[8GVWPSLD-HG?CZ;.\O>4TU-Y7HG@4HD=962]#0!HIFFWN38V.T[+@F*&NT
ME+6[92 [D)T<"9X.!O*\NDV%N)5WUT:];'$=$VBQ_>H'6GRK!+6>K?0E3HS
M!P39@>Q =HTDN].^I<$'A \(6NR0^H$6WRK!7K^O6(:\O@'P 4%V(#N072/)
M[E13>GUY7;_@!6[K!59FA7]*'2:KE<>O^/SS3UER=N<XLX_7[H1Z64"_CO\1
MQI0]WW^I]WN4)%_#S^$]3=(I#=/DAE_[A@G@/(C</W_]ZU]^?G[Z'^(IJ#=D
M;]>YHU^RZ2V-OXZO)TY,GUR 23KDXOQ.Q[^<C"YU5;/^;OSKYO*$^![[P7'3
ML\O+T95IJ+W^P!Z8MFT-AYIU-3+4T?F%K0ZN!B>_/GD]55'?^%.:D"_T@7R/
MIL[Z6>C*Z8$?TK-)_B(T77VWI%H6TR-Y!%\*ZLS))442(2+R0&-*&"K<+'#8
MGXF3D'$4!$Q!R:D?DG0298D3>LG[CR^JQTL/M8$@EMA?90\N]-X//:8'XGOU
MHF$43]E35F6E\6/F%Q9*25P:!,4QOYRH)^([0YI;?M_^%3[X7CIA']DS%0!G
MX V<64(_EA\^/07L8E#5 HH%Z/6593*;UV#D8S+L=Z_3RDI6+)ZI]\;S#WNZ
MT>K10_:;G]Z2BJ3U9MO:A<87)[VI_,\\[')BEY$YC>MT86XF,:5G4_:W24*N
MF/7PVAOL-:ZH[7C4Z MW-G;1(K!3G<7)2Y':\["J!CD>6A&OZ2RE/*(AAJH0
M'K& S^3SV5$KGCCKJYM&7,LTH632VSM!R8Y<R<!N4+S6L=M.SER#EJ'5MW[H
MW$E\ESP\S2BZT90YS65B,<K2)'5"_@"R8%W?\K0&36]H UW1K/K7KQW+-&V#
M$-DX(W%,:"O 92@ZMBYIIHX 7*T%UWI3UM]#:Q&@#6C;G^ :7C0SMW.J67^W
MK,;4N=0)R^/>2>AJ/*9N2J(Q\?P@2_U[RL[GY331+/6C<)O^JWO/0QP>C:L-
MH\G *:_USRN"ZPH,D?0#P-9P5%_1])HJ0H$GX.F8\+3.8/54:;,S !@ =KP
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
M; Z>M<4/<ZS(0U(7/-"SS&YX>;#9'4U%98,J8Y3KD_;S(E#KZ*_-D;]@D"W
M<;MI6B(5>7>\E)Y:HO!':R/4I@U<[-#* US$WCO@]<4N#'"@1%_?+)2J\-DG
M_X(/T3?Z2BL4Q:JJRC?GYX^/CV??YCH_4WIY#F*\.,<_G^.%K^SUU::$ZZD:
M%,#3*VSZ?*?M7__VCW-L)WN#/W_]'U!+ P04    "  <@5U-S>76#W,1  "B
MO0  $0   &-G;G@M,C Q.# Y,S N>'-D[5U;<]LXLGZ?7X&CEYVMBF+)E\PZ
M-<F6[-@I5R6QRY?)GJ<MB(0DG%" !@!M:W_]:8!W$;S+L7:HJ9J8(M&-[OX:
M#30NY.__?%YZZ)$(23G[,!B_'0T080YW*9M_&#S<#2=WYU=7@W]^_.7W_QD.
M_W5V^P5]XHZ_)$RA<T&P(BYZHFJ!OKM$_D SP9?H.Q<_Z",>#@,B9"Z>I?M>
M.@NRQ @K)>C45^22B^4G,L.^ISX,?/:GCSTZH\0%$3RBJ\@42#U66,R)^H:7
M1*ZP0SX,%DJMWA\</#T]O77XG)%G^+,\.!R-_S$Z/0*50$DFWSMS]ERWK$?9
MCTS9YZGPWG(QAY*CHP/]>(HEB8HSSIB_M!.X2ARH]8H<0*$AE"*".C%=-5&6
M0!>@)8)1)A5F3BS8<TZ1IR-3>GQZ>GI@GL9%I6LK"&S'!__Z^N7.H#?X^ M"
M!DVZ7'&A$,NA,,-R:BA].9QCO-*V_6TX&@^/Q@,4^, 7[F!E/"ZD,4I8"0^(
MIV1T9YBP>@LR#-!!,W$$]XC<DCR&5U>!-,3;$LCP:B-0F1<5B),GT;^&$=U0
MWQJ.#[M)D32R9E)$=-N0XO0 "T=##; Y:DB>5QYF6'&QOH3?]23SA,APN4B8
M:!%/M8CC=QU$-)P9F>MP7%^D--56Y6A@EHBB<_WV(%M'C#3EMX!PB]*TDZ2]
M&&E 3LPOMR8<*0)=\4FS*B5QWL[YXX'#?:;$NG9(L]%%/]K$LBQ37P@8S;20
M)DT8_^HLCTNHYGC<1)2(1E\,$^)V I!G9]'8&#&1N>IL!,H>B52:X5$3*5)D
MX?4P8=%.$H:I4[_SS5,%EYT-(JFCV8V;"!'1Z(MA0MQ2 +42S26(B,Q5B0R8
M,:X,(WTKNKE:43;CP1VXI[OL]U&_?4MFR(Q,WX>]9OGX]6 E^(H(16$DE1J7
M&P8+068?!GK@/XQ&^/]VL/<61KQ1D5P%V1&%Z:& Q/$]H\271,B(@X[9'P82
MC.V14/.?KI1+9DV5 A+*Z [KY.%I4YV A'@[JLY*D*;J (F$/+B5XVD&]U
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
M0U"_NC.H2T\-6DOT,*19K-XDP!63EX>[D27<V2'I8?3+SK\'B_8UX;"2ED=
MVYGWW.QZP*GO()PGDEW/K"4:!<-.590'Q5-+RE$ JHZ+2:5Z%%E4L(_A\45
MK@MAOE_;(U.*3*.NJX1!>>=E.X!?B,Q?NO_Z_6#C4^'AC<P'Q<WGQ(D7',[
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
M5 2 :'US[#_6'Z\:% 5_WAV+49R ;Z)RN;(J-Z"Q5_X,"J>1,Q1@ 26@E')
M,8, !>>88AQ)YNM@\(B=@]*^F9=1V?GY)_33FZ^KT;;Z];847=H7I'UZ*VZ=
MXFV5E.M4(HA:U+TMFF[[]=CO\WY0C6WNC54[2),I:A$15@!C" (LB@^L]!QH
MJBDRAE&GQ*ERHL-^VL"$ Z#JJZ/?Q3G]YITN__"+Z;)P>TP<.W)F1&M/(/>
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
M*JRL(THU..TXK@9T%";NK1_UUG'''A[U%LCUNYSGX0&&SG6E+75FVA (I27
MLK@J:\D-@!P10)0U3AE%&6X0B.;(&M,ICY!C=-TI#)'8HLB(XO;U.'OSJ=1%
MI5>NX8/"K?Z:/<.BX?@XO,*,,.2CL0:CE29%5!T\!1;"V&+% N&4AOC?J?NM
MG:(.U7NWG-()V)$?V5C?3'SD1M?[4=QQCZ8ZNZ1[1^PX!&\#*BZC6O, ]S"M
M0OY1"+QW>3%/]V/.BH4O?97N+3PMY?91EG=^<9G.F^O<<.I1B@QZ0P62! 26
M%AU$';#>:> ]I@@[%8=H@Q/^WIPA#V78RWO )XQ\;PO_W;7G6N-[0^I,246]
M5 P('G]0B#50 :8C-,>A$20]*7OJK#I9+CQ?GEO!OR]N_5)&^=Z7\Y!OVU9[
ME"K36GM"A05!*Q3UEZ@J.P<90";JS0:1X&"#+;">C/^F??0\]G4C?/KJZV3S
M5.O('-OC6CQ+F8402]14 BEH--""MD#J ('5<6Q 9 UW)W_D=7 ?/7_=I3$V
M??7W:%Y%W3Z](9EB^7_TY9?<^NKC?+;MYN/KF3)&E$3I+5&O:0!6,@>BR2"
M@A2CX*RUNL&CG#WM:K1%@U9QZHL1'WSE8UW) 7(<&3R;KZ[S[GX3:FN^##/M
MF?48&!I72Z,$ RHY:5K!('&8*FX;&/1][7:UO"2T#5EOBX2?S=+.LB\B'K,H
M_<!=Y45>+<K5\6.-]\-J%9!AI1W%@0),;6P\]!I0JC (S@@F'.<1A)._,=$V
M:3K#KB_VO+[_='=4<:ND;]]XW*.4C$!B/<0"$.9AQ,)R8#AGP'+JB"7$4=^
M1_V<R'XOIDVW_=)?Y+<[--:.IO-B?C>.M^X"O9XMXPXBM-K:6$5<B<,S_I9N
MO$'I45#:&-K P.YG3_M[86'+'='K\<UC66^EW[V@;L\850EHB<$!"&?BH@.E
M!%Q:"Y!SDB"-+78G_[S>]T*]UKNBOSEO#=Q:U&'4,+9O^;R2(Q/2""=9VL3E
M' 3/(WP&A6A":<LTI,@TN>G:WU7I5G>HVX"I\].T!Q_"LR)JE,LGQQ[M'Y5M
MK&[CAW?*P]@O=-[AX=TK$AVATO,0*K]81<U9/2JP58@^WO^]D[%>C/>-Z3.(
M"!E(+$8"$C92<JC$:(I&4PR':CP6M6)X=-V^J<[+_]:SI3\/+QMQ4ZO)VXO(
M)DI.IQS*B5"<P<EH,.!X,&142L$);N+VT\\V:<.^??'T<2>P];5L;I T!5W4
MBV2>?TA]\6F^<C?*K]*%XMMAO=? J5%>-A[R,11X0C"?LBD7:C@:8:7$4(P&
M1 S:">K;Y7+;%:>Z [%_@NU\$NAYT@QQ-L)Q;'#,AU%#H6H\P%,)R6BDU)0,
M:@50/<I\NY+_\+EVE3TCDPD9#B 9C],#AY(.$*6Q]1Q/IU".AB=_G_KP[MQO
MBCT$K2.Q_V$4GYM9?K%",0WEQ;(L]IQ>]R@OFT[1>"Q)Q'Y$V) -Y!0I@269
MX@E72HZ^H^FU-2IUA]]QS)SSY:):Z"+YS$_GY5==NK3)4&J[J#XEQ\RC6 $?
M[:5WR]F3X?KHZ[/BWL/P/*RC[NC9^WF5I]KO!_M11/_TY'W-#BJ=VU5%*>IP
ML5AM\X1Y>3L:NJOU'M-W7E?+TG=L(6^L[G8(QW8_4I76W[O!XF&*+SXDW_5T
MQV.HJ[QS,W:CK!M$?"[7YV)N*E^N'O\\*ZZ7B_CU/!)YEJ]$N!6[;XR[9N]9
M$>>:BSQ6\E2KZ[ZF[7CV</Z7%W&M^C5.%NZY:-L]CK9GC-K[B$HV&!-*APQ.
M!T-"651;L)(#BBD[HHOR%L%7KB:'M7F5-1M.QT1$4X5"))D4 \G8!(TH'0TB
M"A@W<+;I1\=MJU.?'T.VBUMO9^.OBSVP<;E+O13G^*MT;>1?3U:Z_;CS2F$9
MDR,\%6,T'!/"V%3((8[0"S:2T0Y'3=C4DY[;/YW:@;)SE?>556 42\,_W%+
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
M1]?717J]<E<__)+FU\7H[J8^Z8ZKMU?APC Y68Y7YO-EL &S<5I?@W7?T)'
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
M:MMQL[R:9R/W;3Q=3L+"W]QDL]'^J^1W/9^X(*.D0CM+PG\*(FICKC>!*##
M-4B_W-D>:HMJ:Q&9_L+N5HN)TDT8+Y;X+5O<E'?=;R6)>4C"?Y//HV][P_&.
MKBUAP'MA*<%$<^894]I$KQ*UWC &=/W@_\ZFXL[6]=W#-Q"GW,<BGRS'BZ>1
M1:=VS[G9(EL\_)9-TB<W-3Q1B M-*6:C::F,*GZ[VG4F7"'MA,!8(X*5\3$R
M/&@50A@HI&BEF^2Z"M\NKR4Y5KKYJWH_Y GLY'V)"J.Q5M9RZ:AD2""@S 9?
MKA3I,VO97A=B#PSZ+GS\]'@/VBFYD?&BV$AXP!_YVN.)6^VP<0+#;!"TXZTP
M),#AI$/ :^N&ZHH\,3F^RYC6&-J^S*S7)KQ#CJJ=91*.L:<@]&^'&):$,JG@
M1D:$N!_X.;AF:GN= ZV!]#8),4C/Y4!XT-(*NCR[739D]-B0_4OI@P6#!!!8
MYS4QD+.P@K0T)AH0'B,:T^#W>:51Q152"]K(.X2HOIOD[FZ:C5=SW>7ZA-:X
MG. N\^ER%5ESP'%2N8:$4$F)CIG3@)02,^3,2B8:A?2POMH[<V*VK/;.L/KS
M.%>P8IY83Z&'VBL/E.<QG)1Q0X$D8H#['/VO>+K'M7>O2\>7=UXN\O'O>A2P
M,/EM#%]^>F'L:=ZZ]V+4'KPB,4[NN[:IHHAA>G%IJA\>'_DX>E@=R/TC3&E5
MW$C-*T]LF!,%91P10+&&AJJPM.)8"XLHT+)21O^N_4D'Q9SODK.Z#ZGA.Q*/
MD/4$*BD5\)*#\$-M<$08R4I^N3[\1GU29J<#J5^P!^TT6DL5VGDH:^/3YQ+
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
M<%HJ2,(<B)$4#6:$SO9IVM5Z9U"]M02Q+DRO7&AF@HE$9?@OC(E 22<$%H;
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
M0=&)T16#V&F,JRB>?%?7(18[P6/IP^RWGV=^DEW,ELVV1'77:/VEV%Q8HG.
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
M6Z]\2+5Y7ZP_5D]N[<6\$G&E4<ZHLL(:A3 SS?5"1 #*NX[E9S]?242=0Y!
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
MH1JAO3BM9\LWJWGQ]?\IOEU(K)EE@@N8.\AR;T*;ML]C0#M=>7[^TP&$RBD
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
M,-%K>\_P<TI]!G,Z$04:[L=W+]?%8294B=ZOBR^+\GZS_/:AN"O7VV*^"Z8
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
MZ,'9F'83R]F'IL)P=E6N!RA:5*+#8JBQ.>X77'VK"=[C]-\O5H^VJLZ55QU
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
MB\_+0FXVQ79S094"#C)(B%+68*0=W!N5U(:5%!IF*O5*^ A=D^'7XLMF-<#
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
M-Q>.JZ A3)Y1T"0.F8>"IC&M&J%#QU!0X;+FS>:[2Y#_L;RY*Q>4 0@*6UA
M+<5(6<[:<\2(:D@67VK,[W?+S6Z(@(:V&S*('T(,'\\/%3-;[K*/Y:?5>NWG
MF/Z8;]W$'(;R R*#QW!?1\QY\/:VJ=.H'<98W.'*%$4V5_Z97JN9A BH]L@5
MLHK8_7 UZX[;I7%:#1^L+< X0[7T3TS^E0=I5P>\I$':V:9>@S2,L:Z#=/]
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
MC8@RN2F41A0+F:-"$P8I R'US:&?G7@9_@@G^Z,&U'$UN#=5W:0H)4MA\A-
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
MJ^W*P_NEW&X_?%ZN/_Q9WGPM?W4__7E[L&+!J!+6, 4MER:G>2&1%,I8D%.
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
MXY,*G([1_G+LLJ\%]AO9@B.A%31$L=QJ>LB36-%SIGNO!:1M#@IH''S"85Y
M@#"G0 ,M -=TU.GN2>(Y?,X;Q&-?O8Q-X7 ]G%KD'"-!(A;"X%Q%*LB&9T4H
MG)&N(G-(-(_%-"<[R! 0-_VF"KJT0A0684R:MY$MR+6E08]ZGF\)"2 @S04S
M0!$ N-1N&I@[(14YYD*DKK8[>9?QUW+IL?FCK(%SW8%<=A.<\6@,$YX3!D^0
M35B9<I:H,WH4A^!YZ%(D6ZH473!,I]YNJJN[R]T_E_X9RMVCI7_,*.4&DX8*
M2&ZTSJU53>6^&W62!3W7V*$YCKF%QF(H3$XP0Y(5E+B_%\H65(:];]3G;I ]
MM).-O$"YBD%I-\T:F<TPX=J#RPZ$SJ)V^'G*SDA81+[GH6,Q#:J2]<TP17M7
M?BW7=Z5UQOKK7C=+!V*U^ZSNMKOJMMP<FQ<LSQFF4##I!%1;"-S7&CAUS:%0
MR(3H6K1&$ZO;'F=[W-2K6YBXQ6.WF\1-0FR8T+6<^N&5M2"S/QW*K(4YH>!U
M)?",[$7WP3S$+[Y95>*^&_<BT9.7Q[?[I\=_N&^H/I>VL!!JBX$H"I';@N7N
M#R&<7G,-(8*%B'F?:#Q4B:7TJ3O&3HW)3JW)/GY_^C*R_;'0I\5A:A=WD^MY
M>C=,ST=V["27E7;VPYFP,+ZOYQ$W)K [\ ;35,QW?N:@;L#]BOBVVBYR"BP%
MK@4C<Z051DBW;2!A55">'?;)B2- ,[X]FNP/CR=0O -9ZB; Z0@*$]'NW*2Y
MLO^4AC,:UH^N>>A03^P/K\(?P$#G3+2W2AW1K:_>N@[VV_*VU-7M<K5> "NA
M 7G!I-%2<F.EA2U4QG,9E)1. 3"Q.IG_NO,W&>Z3D 93:'HYB=\Z9IIS=UF8
M7H9Y*TW.F(#1<^GCE Z<AX)/2\'#I')Z?W2-)X?+QXZW(?]:WGXL-PLH$&02
M%P!C@*@J&&"H;8\C''3G??]64BO[X9+!D_O+PY1] (/=Y'D<\@(U]C'>LC\:
M7".+[9/\G%',X9S.0_8BV%'%[FV!N^9[E:MS9FRAY R*O !:0H*4P6W.[/=S
M@XIY@CXXL<QX+)D'TVMV&T91Q_WN5.P$[FQW)2;-#O8)">?VJOMP-0]]Z ?]
MX?YS?_M#56"?ZZ!":D$IT901[D\,2,#;1B@L@M:Y C]Z/"7H-8\,)2I,#1)P
MU%L/)IFX=9YR]61L7JH0"OX)7>C%P7/*</EI_6WQ<[GVIQI.<A'?YCX? 92:
MPJ <NJQ$,HB9D'G;GN:FTP1E>"N)]6*/[7Z>[>%UDXT(+)Y7D'$)#!.3)[E[
M?J(2F\2KZO+.3_+KA8"9D'D/4S"IVYK4JB'UB_N1?^^JU-Y*K[\\+U!>J^^S
M=C\BQ/&XFE:3(]I1Q>Y%D;<FGEKT^F6U+E_ORMOM0A,N.:$.4DZ0!(H(R?;
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
MD)J5Z(TGWKDY(,HN':1A.^+#B>ZW'SXJQX-WPW_8 3^ZP"/.:LC3[H4_1VC
M3G@TW\PC/TUGWC.[X)%YC*2EERY2W]6WK/^\J;8GYZK\82I9NCY??EA^6U@+
M%,P-PRKGD$M(K#4M-L1$/J3V* VBQ)ERC2V[.Y[(_.0/GT55WUBNB2+)$W@E
M@4X?K<@:!YX<J?6&7&0?:U,R9\NL!+P;_?U5/;)[7X34Q[8Y3/^3,)XZ*/C#
MM4=LQ #!*)-8%084!'"5TQ:;AHSWN$!U'&"=5&CP):L_A(B;^FCRR]"5>X0F
MT)5^#GO9NM+3YDBZ,H3QX57M"T7\)V,D-):,"NT43;0-2AAV+FY ,XG30KM<
M;?J\;#N$N'[Y72+.!B=M1UQSJ28/4+\>I,Y3TOH8TKD*/)";\*>[WN^6ZZOE
MYNKMIKJZN]S]<[G9+->[[TX;-W?+FWL/Z6"6"P4XMAA!K0%EU@IM':A":V."
MZF'ZM&^-S2$E;LZO$#$%$H5#Y/XO5X(@KE+O]YP^.M6"SO:HLQ9VML<=Z:6O
MB,[IIGQ3^R5,$I.X)/'#8)UY/2.E*;TT#XU-:N&3KXBE8K.K*C_>[H*) F!
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
M8@'[J\?KMZ\]!0F&VTP[M,>._/S)R/U=<L_[Q[G2-&$J00FDDO#8LJ3Q+^;
MZSWSE^-5X&3DGR]@SF/TCC)W+C)G'UEJ+O)P&_E?+1?Q[!,+V(\^7K]][;E(
M,-QFVM$^=N3GST7J_8*WC@J?=\X :'0,62P$QBC6V"A1.V<TU@O90#*J2X&S
MD,>WQB\Y)QFWP\R=D,S65Y::C9P \E=+1'SZPIP[\\?MK*\]!0D#VM3[^4/$
M?/[DPV?!R74JHRVUAE'GH?-*-GF5L2;Q?A;Y13@U[0$!KZSCA7'[*UII[]AG
M7CNOAX!LD2OM7O'VXO3+YUV[]'9-7%_OJY/";W:'?;8KLDWEQ]W+PE8J;1*"
M,>,DYE0IU>P<,(QH[EU#+M*+P&5C:U[4VE=OWAY\.?8BX?2I$Q?IP&LH#9_N
M=+.>&)@CWL\E"8ON@PO*#):-TV/IP+(M7G8.<)Q+7UDK7:$J$14&*&058[JM
M4@7"R:(S@(X^3+)XO7!U[QKNA6I[@$B_.&5O5J=?N:P?G5R2J'MVOK^HI/NB
M-+>@]XKJ8N6\G<1881N;6(I$<!X+B*TENMF 9V)BEUW3=W<CL*BWAD3KHGJ-
MR VYZNW/"(.+R'$E6[C@>W2(A6I^F+[P F6_!>*5*W_KYY+$W[\7_D7UOP=0
M<Z< ?6/;-0L0-S?YGVL7+IOO=7Y[>;BZO1&;37[K3/R0;M+L6_E(O;K=[YW1
M*R2U1((I P$E$AJ$("FMB6UBRI]\A-NO94VLXNY?YZXAEC)IH 52F@0QBI(D
MM-9^2(MT[P(17>7[:%U;&>U;,_V4=F30NXGC?'C[Z5EK9X5U8VG4F!K=V7H1
MU=9.*SI>0)[1B3 !60:U!_(MGZ)+^Q&HTX$O^:YZE?C]>O]N__%0WGI<<??[
M=%^)P<K$C$/C6H*"*JUI8K%N1C!2&J^^I?O+O"MQ=FE1$D@25R\FB@NB7;F(
M18*44PVH$Q-KKT.9I\9U'L5'(Z.BM/(B^KK>1]_\KS4;!=MN[#@UJ'Z<6*/Y
M\8BF,[#<_GLTL5Y2>U^^]C[]#IP.L)UAP#%!7P;OC>I1'JZ+]N:XJIF3-]E7
M"B$L*+(::L(5Y\HJTXP_KJ3Q20G/M1,K2VVL+5&2$6TMLQ8#B0UAP*7$- Z<
M -[GLVJO6Q&M6_-Z\YH_GMY\%A3*(3QV-"P2SZ,8FKL>0M2-LWH#NSBNZN_)
MTQPU$)W>W/2F*&Y=:P1C6M;&U%7,,$%N\!C;C".I8SB(E^HV@)5)(JW[VQEV
M;"LEE0GDL8:8@)CX[<<=BY.RRK291](1'Y]1Y(GH0D>0KQ?/C9Y>J'0=.>V>
MT4*G>U<J';)O:2'7-V5!]?%SFA[>EO!F^4[^N/N"RG?5'I-/KBGYX_^FV^ML
M=ZW3(KO>5=_]5%9<JU@2P#@"0@I)=2*LR\P%-8A3:!$#7@?_9C0S]&&^]DA4
M$9WX=A'5WD65>U'CWT4YBW_WO:CQ,2J=C/ZH7'IZ0]WBND"W/.:%1-\O#9HT
M\$$8/UQ8SHC& OK",G1G"4#DBQNG?NKWF&WB>U:LG,0B 3&"1KA4M7S= ;-C
M<P@DV._ 0>]& BO/XSP3_5':YBDA_7'L)@"30.A'W_W0"\+#3Z%SAD4' [H,
M#ASN1CYR1QO./SK_LLYV*T ,U@09(KA A$/$[AK$*F9#&:AC,S-QT-&Z$5BH
M*YK]>2@ D.,PT7,83L9%1T,\V<@3UN7RD:\C'1BI%S9=.>G]/OVZSK;F>[FS
M)2W$;EOM4JD74$51I(?BUVJ+X4IJ1A6,$XZ%M@H:C2VH#8"<4"^.&K'9P)Q5
M6QHUID;KW;;>*E=;&QW-]6.O,7'OQF8S0>[';IW1COXXVCHQX74'\0P!!HC$
M,@@QA&-Y\%[<C3 WU[OO*['9[&_3MO6Z(: HC:&%@"-I#%&&"MHTQ"@C78AQ
MP%\?F !KH]HAV8WGAL!UGL\F0LJ/MQZ"]#P]C8;6-M]4VTNK7&%NU.X9XXU>
M6AOV[UU)O?2JI&H&. 8543_MYR.$/ (H\Q+O& [DHW40O\SS9-*PG4E\F^W2
M-X?T2[&*E<,!8D6$0!AI;F-IFS8I4\ GV1S64F!ZO;<8</K$8FEA5)GH61@/
M!+9;-CD=IGY$/ C.("GC6:3.9(GC(+R,Q' D7_(0?; O:QUSS94Q,4&2$Z@P
MI0E$U-%DTPPP4/8CJHY_^63<%*U+@^8:.$<T.HT53^"6-CQ\S7]R1/3"P7\0
MO,W6E]E-=LC28I5 I6-<9@<)Q(AI&&-4MX5BRW"_D>#3PG3#X::VZL=<0^($
MED[CH@^,2QL<O7QX<H3T1Z3K,'FSV^1?TD_K[^6B=[:[3G>;'\?U;6HL@@DI
M]T8J*R"7L>1",S="G30)[#54^K<2>+@<#8N<9=&):?UV+0V LEL^.PV*?KEL
M3P"#,,^3^)QAG^&8+H.!1O C'[NW>1[Y/9Z0<RU]/*QWV_5^6_S^=;L^I"[:
M%-*ZSC>)T(!9"@PE2@D.*+9-VTIIZG74=Y06PT]MUD9&K971T<SR,@WZ"Z2>
MIWS'P;D;94T/L?><Z'/HSK2*TPFY,\0V+O++(+F1?7IX;#< 8MYI6'TPY?"C
MVN/CFA# E4.<4&X3HAG6J&D,"^YU6J1G$],E8*U=O3;\]470,_4*!U[OO*LS
M;F&3KGO(=,FX^D&Y#"8:ZL13N=803/IS3;U[1QI&>1(KS6*!58P8C46;UVG<
M:8UX<".S\$VOS7W]<>S+.0$@'(-U9MG6]Q0Z7LSC">A2N<?7C6?9IQ<NG0_X
MY?LTN]ZI,MG:_VC7;SFPC"4<&X1XHBE!JFDJ!AAY'<WKTT!@WJEMNC]T/$_%
M]<*M&]<$A\R/9QY%:Z9"[#%HSI#,("2703##7'AX FLX'IV7?!R+%8=L<[\M
M(C$"BD"54 2HMBB!<=,6A-;K)I!^+81>\JF-&L(M/:'K1B[A4?-CE\<!FXE>
M'@7GW'+9(#"703 #?7BX7#8"(OUKI]_67]*J6).686RY L(F#&$!A,)-@YQI
MK]U@ YJ9H7ZZB$KK1IJUZ8YGWRHJ")3#ZZAN*$Y42S48>553WL N@XW&<.39
MBJHG-L-XJ2[C*.2<QH1JAAFUT"86FZ9)PQ*O0U&#&IJ1FT::X?%!=0@_!0!T
M/(9:R'S/'4[>+.4)[Y)YRM>53DS5"Y^N7/4A_9;N;M/R5JFL*+)\YT;ZFWWJ
MNM^VR=UB@A!T61K61AC ="+I77FHE ]A#6\M,&O5!D;W++R(:AO]"&L$:+NQ
MUK2H^E'7>4!G*O.>!>P,AXT']C*(;$1_\E#=TO/1HO+.6[']DNVR\JW#\F#9
MNRM'JM5/ZG.V6]?-(Q@;:F-D%22$HAC+A+0K>I1Y%8FC-1J8X"H[H_N&E@\#
M-:9>1)6QGJ\"C89X-\*;!6P_WNN(\TP$V!7 ,SPX>@R608?CN_7P=9@PN W9
M8OZV/0*%B%34 *DM4@102F/4SM/16-BAV\R[MS1==7IOI_3;OF<H!^+J69X&
MA[1W?>J-YF2;S]]V.$(Y#L#+8+*1?.FP$;TO0ETYRUQ=I9OR!$[;^ ?'H1_2
M$HCL)JN8LU[9O/<-G;D_6-[RD:UO5HI@DTBKN$A8S RGPL"63ETIO=I5+VMM
MNY';)"9U&K#\.&!/K>^^]I9N]NFZ2*-L%Z6-1]'!#6,G3!._$C(&HF=&]J0!
M6P8!3.MR/N, \7P-X/;+[4UUHN]HY+O=A_2P=ARV->O]SG%:\5MZJ'(RN#*:
M8\PL2Q+!&<"4<RP;"X2B7A>]CMENX/3HSM2:%R)7O>QK:Z.T-O<BVJ6'LJAQ
MC.'YN,F8(>B6.\V%OE\F=0*\:8%O#(U,"_QO1^ _G0$^S"L.W5$\0\8A8K$,
MS@WBV<,7((*AU^E*LR[,_O@3J.;[)BT*]P=DNDNOLL/[U V"W6'%)2Y?+8(:
M6"TE$T3R=AK0BFXOALYD6NC=9&<3M.KQRVTMF)LTNDP/?Z;I+MJFV]M-->%4
M?J'\]M?;_=>\N1UQ<_H ]"8O#N4;I?GUKGR )RJ[]/&UF"BO'IV-TN\.B^S<
M/6[=[M@:/3B/$,S,O6 !=WO-Z'R^B)'8<SK,?%]_R8XO"KC/JD'7#+XWN^;F
MAQ_6@?U^G^7[_W(YT,IB;D L $VTP"31L4[:C;,DEEXOV 0U)/QD6LM2^]-'
MD+/CO)!CH/0N6=RFCJ_VCFI*8KH\!KGG7%N0H'E.Q<T=K]XS=2>&7T1M"/_6
M&/_W,IJM_4==J#R(2A=FFL[K 7:7V;Z0,5Q&7CJ-JT_-%8;'MU/F^G/;CNS2
MXB!VV_?I;GU3W>RC.$.*6(AAN5L9(\11N\T&BFYO H[76G#F/MI4Y85?&ZM*
MWKZY=5GD":%[7$L[#LSG:7@>A+VY]LBI;1;?PNTLC%H3)X?6XP+@R2'N=Q]P
M"_7VKF!ZK&</O2>X"QQ/E26C0KF 2F-<?_)0G<Y#'^Z4*-__[@#8E[,J3K[>
MYT56=L=BQ0PB,94$66( $X!;V-X!0)'NM!=RI*8"*\-)YN=2OMO&Q.-L0F.D
M!W.-@&T'19@65C\YN$/4&1>UUE6Y^/MY$/40@FF1[:<"G?KL173(#^N;H4KP
M+!Y/R<!X0"Y  T9T)@_2V?QF@YYM]S>'R?'AD%5LF:14E(\N4X8E,8;IU@+-
M]>I;NK_,NT[_C-FRST [-=)C3W=5$OPTQ1-M;M9%D5UEKG)8%]$ZVK5&1_-<
M?^L!ZYEY@A#!6<:T0!#/\O!=VR.I^WUWM[KA>FD]X5A\SO_<K8OUOEDJ.>1W
MG;69H71?7Q]OQ8Z9Y809)2"C%L2NL\EV,D(PW>E"E.FL"9P:=AK^N]/!?V_*
M=^WQ^-F$$>R072XN>'X)Z*GYIY/O4>7!D;%;)UR6]-(BZ)'-+BZ2_1+>D2/:
M_('B]J9:J:D6;+ZFY2;UW75TDQ=NB*_W^Q]NX/^YWF\OW)>+[$MVLSXN,I=?
MN'":Y3XN?^MJ]ZTSY?1/#$VZQPC;4WGYI%UB :G[M/[F<PT^OP+@U+2[)>BB
M7<AHIY_$;MO.2AV?P%HIA %"<?D/MYQ"9'EK$5:)UQ7](>V894GA(KK>.WKP
M6^<-&HUNR[Q+"<0 I2_GEQJ[JX7>9@&XM;T*U=W:Q-'\:0NU 3B?*=RFB-XR
M"KE)/,VG'QL>A=ZOV2[[<OOE;M'@9/FY>IU0WZ:?\@_IS?'_UE5,L4J2Q!I.
M(-0D-C0F"4[:J20I9"?>#FI 8,*NS3Y=.CLIZYHG-J/M;5IFD/NC^:=;?3P*
M@6 QZE"]+2$\?C3>1.9D_?B4OVNS(V=W]"F/:LO++WU84&0\JK(E1*A?(39X
M# VMC'I"]U0Q%#H2"ZA_@KN83]BS?61R_;V7*8 B"@E"2 @90\8UAJR]JT-Y
M+'V',B"T3![-GD8F0\6HBTPN(#R>,EE'9A*9#!49'YE<0(1ZRN30,318)OM!
M]Z1,!H[$$F0RM(OYA#W;0R9=FS_2];[(7;N'/+W;P'SYHZIE76E;WV_UT=F0
M;=(5Y%0R234 #'&,F(U1^SX#QZK3N\Z!F@XLC27+5A:7JP75.L.)T='ECZ@Q
M.VIN@ZL-]R#> /'H((;SAL)/!E]H%#R$;]YH]).\\:/23>F\L7I*X\*!O@!U
M"^A</DG']3O]\M-IG/*D3?'[SD%\\N&[PV?W^]WA^-(UHR1&B9 4$RNEBH5(
MZO=E$1#0XW!VH/;GUK9OZWV6WQ9E ENNDJ_KFWNS^@AD7CH3I;4W?D<]@H2K
M@^HM(%)^TO?XJ<;JH&(154;?^[PR.S++B8G?@9RY8]-3"#\?B[QR,/VM^'MT
MF1Z'RS8[' ^:.;[>I<>=*G]FA\^1L_]^<7@7P)\'U@@'>WK ^I1F!@[2 H0S
MM(?Y=%W>\W+A\M("^?#2 K'?N[Z>EJ-"_KC[ROOUC_(C4>Y]>E?=IE&\NST4
MY8/&KO-_R&]N['%CU,IR"IB6D$&MN%(*6%?*,DY<\1HC#+U>4@]DHH8<8Q++
M1#%+!* 26L6(*#?I2F!4\(N+2Y.+Z&_E>8[/3G"=@<7?/:\IGBEVW;::O("P
M^:ER9>TOU04?T:E+T8E/909U^KW:KT@<-QC6KKD?[IR+_BC=BVK_IKXX.4B0
MSFQAF;E7+&-WR]P@/+S">0DQF4&P?KNM+J86$,7.QJ0\J>$4EBC(3<UWA"'
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
M_-6UG<#\]3&[WF57CIQVA^C=X7.ZC]Y=%NG^6S7!?C2WH2LT EUU1K<_784
M=BRZ0@NB*]2+KGS172Y=>7O2@:[ZH3-ER?XVVZ5O#NF78@43JT4,:&P MU ;
M(&-1V\@X8IVV+,QCV62E^T63L)7%WHE'35&XC?+=N9*P\BOZH_0LJER;H;;W
M"/AT]7V86/=GZ<G"O-A)@#8B@2<"_"._, 69UO< $P)](]!5I8ZFM9;>[5AO
M]ZLCQ 0S@@ *1:(, 56+QW8II<!'>8:W%OJ$6F7@__$C_A$P[$;FT\+G1]!'
MVRZBD\G8._MFN]/T6<3.$.AX:"^#%$?T)P_5+SW)Z]LZNREK7YOO/ZYOTH\E
M=5;LJM/+P]WO''?2A!-%E032:$DA:R<D+&;6ZP+KT1H-G1AGN_5NDZUOHG6=
M+QVBJW)P?IM^\;\K9N=&X]BP+V10CN[6P[$9!K?.57"^3[/KG7(I3;K;_&C.
M^E>,\0AAK$0LF=9:),!*:[6&*I&M%59YC=2QVPZ]U=YUF?Q+MHD^I]OKM%R+
MJ/;2;FJS/7>(C0Y\QWIS1LP]*\JCI5%C:GM!3%U@/I'*3%PL^L%YKAP,%)AE
MT&@P[QZ6=$%1[$JJ)V7DN:3+0@$ 14 2@6(A%4E(W#2N!4I\N'2D)@-3Z(F5
MGC7<6)!V8\D9T/0CQQ,#EU;2=</N#!..#/XR"'!LI_*@'7:4'+)HC/KQ&//:
MA"'$H198&ZT)1 ;>F2(Y&R&1'&; :\@F!X9@4$HY'?HCY97ENG)C\I*3R[/
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
M.[1EY@\-CGJTF(P;P.*ZGXPZH@&T0F"#I,, !SNVY$7@3TH>T-"=Q_9P<R1
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
M"E ZBLU=@>G]//\RFEQN+X6-WM#F*J%U9'BY*75P<%VLWDFFK6 &$BZQLMY
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
M]K2D5(_2.<&85JVK0QM\71:T-09,:FE%L*:I5M8P9*!#VL4:F+W=D'!"4!^
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
MW&0Q6CS^<S0LGO6.?K9 %QDSFPS&V\7-]_+T5'"WEO<%%?=_K:SETE')D$!
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
MQR"EL8P+PQ&'3%-)O.!;'A()?".QZW<=T!D=4"]^KE\'/%5[FW=3 9PSP>
M=)9 093"&!&+G5$;[CF+;3/!\G?I[XSTUPB>ZQ?]'GG_47:<]<P[P2(#(]/T
M5FD[[WA.1O+;C<M?N>C7!I]&!?_;:=)\.YLTZOOWV>HD]V6QO1*7CUN;4S!>
M&^LXQ5A(2B0SQFSC,TY0VUJOG;<3I[\"MO=6--=>3)<$<SVCX+V.9I-&3#E@
MD#="V)W-I!#.217KZ@V%;LM!VY)[$2YZ*[<[(Z1+HKN;5,#18B-:<253Y1?L
M/;7;@*<C-*N[4U<#YN_26P<TVJX)]'1)LU1=I$T]N_C5S=W>&DGKZD&M%0^J
M>CGE*^!4^+Y ''8&(B>5Y=1YJ!CCVBJI/<02DE+'<?70]\,DPJKX$D&XDJ*/
MF]6<**-R9%30C".),6%4"LH$5H1*RP02D'DI>4[@L?-EY]L%S[0N)C5EE!R8
M\<EZ*4?'!8(X85X1JZREV#DIJ04<4.J 2+=J>@S(2B!0#E87$;LI8"5INKG[
M8SK=E-@^6=UD_X# N:!20V T0U1!*X Q,E$+6\X0SVG4=*50.I?MTQKHW&")
MG"*^ZX>:#&WQLQA/'Q(E-G97F8(YIT8'+RG3SC(2K63J!)1D187X%55:9O5L
MZ7H3BWKP53W1+V^L4HSCA[[_44R*V6 <)Z2&]Z/)*/E%B]'/P_@I/SA8R>+_
ME@ @+-5<":>E@H1$N4%29.UT7>_"7BU\:J-YIRI]G[0_/Y:HK%3QFX+62 $D
MO/*44YPN=F'(6#16'$3,BYPMMNLJL%ON0[N,[5N'!A=-;"XT,T1@*N.?:,X
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
M9A6P7!GA=4XN7A>//K+9_5J.*R)L"V*ZSJ+IA[0Z207U'F*I$('>"*"DALQ
MDDZ;<'>D]516S;Z/!V8\111B0QC #D506K19G85(]ZV$>3:3C\OH)31MS.![
M-=7X\E,I-?M'!.V@0X3YE+ZGJ7%*1Q6W6I^.6@[DA,NZCYDS67P"+Y>1M$7(
MG,Z;.30F $0Q 0)'HQ9 CZGFP&[7"'Q6$^@K@,W9G#Z-G(OHVA)V#IYU'_U\
M8-8[R*'5"AB-&=,Z_EFO+9I3I-\FY"4\/HZ:BZC:$F(^ECBO/C0D4*X0\$0
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
M.K;]/%;72F\?O\;?S<<K0/PQ&$T^3N?'(%KA6P+1T0YB6FN!+=50"6F<IUY
MG^ZQHAP\9U5,Z!F:VV/9M1F87B!@!%#&(4H%1Q)#!P#Q(/KB%/B<TY"S\VW6
M!J:;O"D5>R8'V@E_M'Q&TD2( RFF5>JZX9BEGCE!*&!&::Z4U5'>NW!J\@I!
MNR(>%YR4E'M4D !13#"46!N*K)="4Z* YAQ[ [/LKUZ$14NCYN Q22V,:$)+
MQ'WS1S2'573*!M^+5?96>QIB6YGU4S%;S:2$5C@T)'@2M3ACDF'-J,5&,0>8
MCXJ96(LC$UJ\-_9JRF5$_N"8P!6WD% %" ;44R$I@"+^RSC# *O6>BXU(-OY
MO'^=!5$1E=L27#,8WR['FSNF>S_1\BE'E0(NJ? 2R^C *DR-)D)01;7!W!FD
M$"A5M[V>5;ZB_%_+U/?FYF[-@9OE8IZ,U+@F/9B/;H\L_:SG1'IX!KS"PEM$
MN112QDV-QFU,:.B8R:FN=K8B:#S$EX^2:7.T;\J[W+L&.QHOT]WSUPMY2C$\
M%Y&GGQB 0='+HC(:.Y0:;"0F"NIH_UC,A7:M]=?J#3(KYT&K&+VY.[2>\[7E
MH2>%**0".DRTU)1Z8C55 D'$E$(*6YBC+\^_F=EL!FE3VK(BVK=E3O7(6(IV
ML+"4 *<4B3H :VDBX2V4D,4?F!93PE3TRH<))Z.?Q9?B=CE;U7%QOV['RTCF
M5*0[721:+C96[6\KO$_-FH^0I)+G!V:@)19K)QFER&L%%8L^ <+66B:;-:ZZ
MLH&5QM2T?8ZTI4):#KE6JD(4HMXC2"".9@0W&@HI"$9>H50KOU2*==VAU:-6
M^P7QU3.>%X0VDDGK<.K%XHA5TF$8-SDL 8% Y?01NUX5418S!P.K]7&@A$K8
M_"+]E:ZT_M__]?\!4$L! A0#%     @ '(%=37UYBN Z?@$ 5E\< !$
M         ( !     &-G;G@M,C Q.# Y,S N>&UL4$L! A0#%     @ '(%=
M3<WEU@]S$0  HKT  !$              ( !:7X! &-G;G@M,C Q.# Y,S N
M>'-D4$L! A0#%     @ '(%=32F"% :A)0  =HP! !4              ( !
M"Y ! &-G;G@M,C Q.# Y,S!?8V%L+GAM;%!+ 0(4 Q0    ( !R!74VW@QJH
M:$L  '2A P 5              "  =^U 0!C9VYX+3(P,3@P.3,P7V1E9BYX
M;6Q02P$"% ,4    "  <@5U-?R,"/Y'9  !0R H %0              @ %Z
M 0( 8V=N>"TR,#$X,#DS,%]L86(N>&UL4$L! A0#%     @ '(%=37?L3,=:
M@   #(H& !4              ( !/ML" &-G;G@M,C Q.# Y,S!?<')E+GAM
7;%!+!08     !@ & (H!  #+6P,    !

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